자바 스 크 립 트 수만 키워드 순간 일치 실현 코드
var Root =
{
f:
{
o:
{
o:
{
: true,
: true
}
}
},
b:
{
a:
{
r:
{
: true,
: true
}
}
}
};
이 층 층 의 구 조 는 나무 와 같 습 니 다.모든 문 자 는 나무의 가지 이 고 마지막 문자 가 바로 나뭇잎 이 며 새로운 노드 가 없습니다.이 럴 때 는 글 의 모든 글 자 를 이 나 무 를 따라 내 려 가면 된다 는 것 을 알 아야 한다.나뭇잎 에 도달 할 수 있 는 것 은 현재 문자 가 키워드 의 하나 임 을 설명 합 니 다.중간 에 대응 하 는 가 지 를 찾 지 못 하면 당연히 키워드 가 아니다.예 를 들 어 foo 1 은 Root 구 조 를 따라 아래로 방문 한 다음 에 Root[f']['o']['o']['1']에 도착 하면 일치 하 는 것 을 완성 합 니 다.이후 foo 1 의 길 이 를 건 너 뛰 고 계속 뒤로 검색 합 니 다.따라서 전체 글 은 한 번 검색 하면 모든 키워드 의 위 치 를 찾 을 수 있다.JS 의 hash 표 성능 이 매우 높 기 때문에 이른바 나 뭇 가 지 를 찾 는 것 도 매우 빠르다.JS 의 유연성 때문에 이 효 과 를 실현 하 는 코드 역시 매우 짧다.사실 키워드 의 수량 은 검색 시간 과 그다지 상관 이 없다 는 것 을 알 수 있다.그것 은 나무의 너비 에 영향 을 주 었 을 뿐 글 의 길이 만 이 검색 시간 을 결정 하 는 것 이다.극한 테스트:키워드:성어 전집(19830 개)내용:주선 전집.txt(1659219 자)사용 시:935 ms(Chrome 26/i3-2312 의 CPU)160 만 자의 글,2 만 개의 키워드 와 일치 하 며 1 초도 안 됩 니 다.이 를 통 해 알 수 있 듯 이 자 바스 크 립 트 의 유연성 을 충분히 이용 하면 여전히 매우 큰 잠재력 을 발휘 할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C++ Builder XE4, 10.2 Tokyo > TMutex, TCriticalSection: thread affinity | TSemaphore: not thread affinity | semaphore의 잠금 코드운영 환경 관련 링크 위의 링크에서는 록이 예상대로는 아니었다. 에서 질문을 했지만 Remy Lebeau에게 자세한 답변을 받았습니다. 답변 개요 (해석 실수가 있을지도 모릅니다) TMutex: thread affi...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.