Czytam coś o wyszukiwaniu (zakres) ciąg (ów) w posortowanej tablicy ciągów.Nie można zrozumieć metody wyszukiwania ciągów zgodnie z opisem. Co to jest WSFFFF?
Mówi:
Jeśli chcesz znaleźć wszystkie ciągi zaczynające się na "h", można uruchomić binarny poszukiwania strings "h" i "h \ uFFFF". Daje to wszystkie indeksy pasma dla wszystkich klawiszy zaczynających się na "h". Zauważ, że wyszukiwanie binarne może zwrócić indeks, w którym łańcuch byłby nawet jeśli , nie jest on faktycznie w tablicy.
Nic nie rozumiem z tego paragrafu.
Co to jest h\uFFFF
, w jaki sposób pomaga/jest używane w wyszukiwaniu binarnym i czy ostatni cel oznacza również, że nawet to wyszukiwanie jest błędne?
Każda pomoc w zrozumieniu tego, co tu jest powiedziane, proszę?
'\ uFFFF' jest maksymalną wartością dla znaku Unicode, nie jest używane jako drukowana czcionka –
'\ uFFFF' jest sekwencją specjalną dla punktu kodowego U + FFFF, która jest gwarantowana przez [stanard] (http: //unicode.org/charts/PDF/UFFF0.pdf), aby nie być postacią. Czy jest jakiś specjalny użytek, ponieważ jest on zdefiniowany gdzie indziej w tym, co czytasz? –
@Sam Dehaan: * "\ uFFFF jest maksymalną wartością dla znaku Unicode" * ... Od Unicode 3.1 jest znacznie więcej niż 65 536 punktów kodowych, a pojedynczy Java * char * nie wystarcza do reprezentacji nowych współrzędnych kodowych. Na przykład znak Unicode "MUSICAL SYMBOL G CLEF" ma kod 0xC0101D11E kodowania Unicode (więcej niż 0xFFFF) i potrzebuje dwóch znaków Java * char * do reprezentacji: "\ uD8334 \ uDD1E". Ten SNAFU pochodzi z faktu, że Java (i jego typ pierwotny * char) został zdefiniowany przed wydaniem Unicode 3.1. Podsumowując: nie, \ uFFFF to zdecydowanie ** NOT ** maksymalna wartość dla codepoint kodu Unicode. – TacticalCoder