php 관련해서 질문드립니다.

php 관련해서 질문드립니다.

QA

php 관련해서 질문드립니다.

본문

3553191432_1625695505.4438.png

3553191432_1625695613.1848.png

 

 

$wordlistarr 에는 file() 함수를 통해 가져온 많은 단어들이 있는 array입니다. 

$lowerarr에는 제가 $wordlistarr에서 찾고 싶은 단어들이 있는 array입니다.

$tlowerarr은 for loop을 통해 $lowerarr에 있는 단어들을 하나씩 꺼내는 변수입니다.

 

binary search를 통해서 $wordlist에서 해당 $tlowerarr을 찾고 싶은데 어떤 $lowerarr인지에 따라서 온전히 다 찾을 수 있을때도 있고 아니면 다 찾지 못할경우도 있습니다. 

예를 들어, Array ( [0] => abel [1] => able [2] => aebl [3] => aelb [4] => aleb [5] => albe [6] => bael [7] => bale [8] => beal [9] => bela [10] => blea [11] => blae [12] => ebal [13] => ebla [14] => eabl [15] => ealb [16] => elab [17] => elba [18] => lbea [19] => lbae [20] => leba [21] => leab [22] => laeb [23] => labe ) 일때는

$wordlist에서 1. ABEL 2. ABLE 3. BALE 4. BELA 5. ELBA 6. LABE 총 6가지의 단어들이 나와야하는데 저는 1. BELA 만 나옵니다.

제 생각엔 binary search에서 $wordlist의 단어들과 $tlowerarrd의 단어의 값 비교가 제대로 되지 않고 있는 것 같은데 어떻게 해야하는지 알려주세요.. 예를 들어, "ASCIIs"와 "Abel"의 크기비교를 할 때 strcasecmp()를 사용해도 되는건가요?..

그리고 "ASCIIs" 중에 "Abel" "ASCIIs"의 값이 큰 것이 맞나요? 그렇다면 제가 sort($wordlist)했는데도 $wordlist가 단어들이 오름차순으로 정리가 안됐다는 건데 이건 왜 정렬이 제대로 되지 않는걸까요...

감사합니다.

이 질문에 댓글 쓰기 :

답변 1

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT