>> HOPARLÖR 1: Gəlin verək Bu həll bir cəhd.
Belə ki, nə bizim nəzər salaq Struct node kimi görünür.
Burada, biz olacaq bax Bool Word və Struct node ulduz
Uşaqlar əlifba sıraya.
Belə ki, ilk şey merak bilər niyə əlifba hash 27 kimi müəyyən olunur?
Yaxşı, biz lazım olacaq ki, xatırlayıram apostrof user, belə etmək
ki, bir xüsusi qədər olacaq Bu proqram boyunca halda.
>> OK, indi xatırlayıram necə Trie həqiqətən işləyir.
Biz sözü pişik indeksasiyası etdiyiniz deyirlər, sonra bizim Trie kökündən,
Biz Uşaqlar baxmaq olacaq array, və biz baxmaq olacaq
Məktubda uyğun index C. Belə ki, index iki olardı.
Belə ki, bizə verəcək verilir yeni node, sonra biz will
ki node çalışır.
>> Belə ki node verilmiş, biz bir daha istəyirik Uşaq array baxmaq üçün gedir,
və biz index sıfır baxmaq olacaq pişik A uyğun.
Beləliklə biz ki node getmək olacaq, ki node verilmiş, gedirik
uyğun indeksi baxmaq T. Və node hərəkət üçün
nəhayət, biz tamamilə baxdı Bizim söz Cat vasitəsilə və indi Bool
Word olub-olmadığını göstərir ehtimal edilir Bu söz əslində bir söz.
>> Belə ki, niyə biz xüsusi halda lazımdır?
Yaxşı, nə sözü fəlakət bizim lüğət, lakin
sözü pişik deyil?
Belə ki, söz pişik olmadığını görmek üçün axtarır bizim lüğət, biz olacaq
uğurla göstəriciləri nəzərdən C-A-T və bir node çatmaq, lakin var
fəlakət baş yalnız çünki C-A-T yolunda qovşaqlarının yaratmaq bütün
Sözün sonuna yol.
Belə ki, Bool Word olub göstərir istifadə olunur bu yer həqiqətən
bir söz göstərir.
>> Bütün hüquqlar, belə ki, indi biz bilirik ki, nə Trie nin baxaq kimi baxmaq gedir
Yük funksiyası.
Belə ki, Load bir Bool qayıtmaq üçün gedir olub biz uğurla və ya
uğursuz dolu lüğət və Bu lüğət olacaq
biz yüklemek üçün istəyirəm ki,.
Biz nə olacaq, belə ki, ilk şey açıqdır oxu üçün lüğət up.
Biz uğursuz etməyib əmin etmək lazımdır, belə lüğət deyil, əgər
uğurla açıldı, o qayıdacaq Xeyr, hansı halda biz olacaq
Asma qayıtmaq.
Amma hərfinin uğurla açdı, sonra biz, həqiqətən oxuya bilərsiniz
Lüğət vasitəsilə.
>> Biz olacaq Belə ki, ilk şey etmək istəyirəm ki, biz bu var
qlobal dəyişən kök.
İndi, kök bir node ulduz olacaq.
Biz istəyirik ki, bizim Trie üst var vasitəsilə iterating olacaq.
Biz istəyirik olacaq Belə ki, ilk şey bunu bizim kök üçün yaddaş ayrılması deyil.
>> Biz calloc istifadə edirik ki, görürsünüz əsasən eyni olan funksiyası,
Bu Malloc funksiyası kimi, başqa bu ki, bir şey geri zəmanət
tamamilə həyata zeroed.
Biz malloc istifadə əgər Belə ki, biz lazımdır olan göstəricilər bütün vasitəsilə getmək bizim
node və əmin olun onlar bütün null istəyirik.
Belə ki, calloc bizim üçün bunu edəcək.
>> İndi, yalnız malloc kimi, biz etmək lazımdır ayrılması həqiqətən əmin
müvəffəqiyyətli.
Bu null döndü, onda biz bizim lüğət bağlamaq lazımdır
fayl və False qayıtmaq.
Belə ki, ayrılması fərz uğurlu, biz bir node istifadə etmək olacaq
təkrarlamaq Kursor ulduz bizim Trie vasitəsilə.
Belə ki, bizim kök dəyişdirmək üçün gedir heç, lakin biz Kursor istifadə etmək olacaq
həqiqətən node node getmək.
>> Bütün hüquqlar, belə ki, bu loop üçün, biz , lüğət faylı vasitəsilə oxu
və biz fgetc da istifadə edirik.
Belə ki, fgetc bir qamarlamaq üçün gedir fayl character.
Biz qənimətçilik davam edirik simvol biz çata bilməyən isə
fayl başa, belə var biz idarə etmək üçün lazım olan iki hallarda.
Ilk, karakter deyil, əgər bir bir yeni idi əgər yeni xətt, biz bilirik
line, sonra biz üzrəyik yeni bir söz keçin.
Amma sonra, yeni bir xətt idi fərz burada, biz anlamaq istəyirəm
index biz daxil index olacaq Uşaqların array ki,
biz əvvəl baxdı.
>> Mən əvvəl bildirib, belə ki, kimi, biz lazım xüsusi halda apostrof.
Biz ternary operator istifadə etdiyiniz bildiriş burada, belə ki, biz oxumaq olacaq
bu biz oxumaq xarakter kimi bir apostrof, sonra biz olacaq
əlifba minus bərabər index müəyyən 1, olan index 26 olacaq.
Başqa, bu apostrof deyil, əgər, sonra biz index müəyyən olacaq
c minus a bərabərdir.
Belə ki, geri əvvəlki p dəstləri xatırlayıram, c minus bir bizə vermək niyyətindədir
əlifba c mövqeyi, əgər c məktub A, bu iradə
bizə index sıfır verir.
Hərfi B üçün, verəcək belə bizə indeksi 1, və.
>> Belə ki, bu bizə indeksi verir Biz istəyirik ki, uşaqlar array.
İndi bu göstərici hazırda null əgər Uşaq array, o deməkdir ki,
bir node hazırda olan mövcud deyil ki yol, belə ki, biz ayrılması lazımdır
ki, yol üçün node.
Yəni burada nə var.
Belə ki, biz, yenə calloc istifadə etmək olacaq funksiyası yoxdur ki,
göstəricilər bütün həyata sıfıra, və biz, daha ki, calloc yoxlamaq lazımdır
uğursuz olmadı.
Calloc uğursuz oldu, onda biz lazım hər şeyi boşaltmaq, yaxın bizim
lüğət və False qayıtmaq.
>> Belə ki, sonra, bilmirlər ki, fərz Bu, bizim üçün yeni bir uşaq yaradacaq
və sonra biz uşaq gedəcək.
Bizim kursor təkrarlamaq edəcək ki, uşaq aşağı.
İndi, bu ilə başlamaq null deyil, əgər, sonra kursor yalnız təkrarlamaq olar
həqiqətən olmadan uşaq aşağı bir şey ayırmaq üçün olan.
Bu, bizim ilk baş belədir sözü pişik ayrılması və
biz ayrılması getmək zaman o deməkdir ki, fəlakət, biz yaratmaq lazım deyil
yenə C-A-T qovşaqlarının.
Onlar artıq mövcuddur.
>> OK, belə ki, bu Else nədir?
Bu c olduğu şərtdir c a yeni xətt olduğu backslash n.
Bu biz uğurla o deməkdir ki, bir söz başa.
İndi biz nə istəyirsiniz zaman uğurla bir söz başa?
Biz bu söz sahəsində istifadə etmək olacaq Bizim Struct node daxilində.
>> Biz True ki qurmaq istəyirəm ki, belə Bu node göstərir ki, göstərir bir
uğurlu söz faktiki söz.
İndi True üçün seçin.
Biz nöqtəyə kursor yenidən istəyirəm yenidən Trie əvvəlinə.
Və nəhayət, bizim lüğət arttırmayı biz başqa söz tapılmadı ölçüsü bəri.
>> Bütün hüquqlar, belə ki, biz bunu saxlamaq olacaq ki, xarakter oxu
xarakter, yeni qovşaqlarının tikintisi bizim Trie və hər bir söz üçün
lüğət, biz nəhayət c çatana qədər , biz qırmaq olan halda EOF bərabərdir
fayl həyata.
İndi iki hallarda altında var biz EOF hit ola biləcək.
Bir səhv var idi, əgər ilk var idi, əgər fayl oxu, belə ki,
bir səhv, biz tipik etmək lazımdır , hər şeyi boşaltmaq faylı bağlamaq,
Asma qayıtmaq.
, Bir səhv var idi hərfinin yalnız biz həqiqətən sonunda hit deməkdir
fayl olan halda, biz yaxın fayl və True qayıtmaq bəri biz
uğurla lüğət yüklü bizim Trie daxil.
>> Bütün hüquqlar, belə ki, indi edək Check kontrol.
Check funksiyası baxaraq, biz görürük ki, Check Bir Bool geri gedir.
Bu söz ki, əgər True qaytarır keçib bizim Trie edir.
Bu başqa False qaytarır.
>> Belə ki, necə biz müəyyən etmək gedir Bu söz bizim Trie edir?
Biz burada görürük ki, əvvəl kimi, biz təkrarlamaq kursor istifadə etmək olacaq
bizim Trie vasitəsilə.
İndi burada, biz təkrarlamaq olacaq bizim bütün söz üzərində.
Belə ki, biz söz üzərində iterating keçdi, biz müəyyən etmək olacaq
index Uşaq array daxil söz bracket i uyğundur.
Belə ki, bu məhz kimi baxmaq gedir Load, burada sözü bracket i bir əgər
apostrof, sonra biz index istifadə etmək istədiyiniz 1 minus əlifba biz müəyyən çünki
hara getdiyimizi ki, Apostrophes saxlamaq üçün.
>> Else biz tolower istifadə etmək olacaq söz bracket i.
Belə ki, ola bilər ki, sözü xatırlayıram ixtiyari kapitallaşdırılması və biz
biz istifadə etdiyiniz əmin etmək istəyirəm şeyi bir kiçik versiyası.
Və sonra kiçik-dən çıxmaq a, bir dəfə daha, bizə vermək
əlifba mövqeyi ki, xarakter.
Belə ki, bizim index olacaq Uşaq massivinə.
>> İndi, əgər uşaqlar daxil index array null ki, we deməkdir
artıq iterating davam edə bilər bizim Trie aşağı.
Ki, işi varsa, bu söz ola bilməz bəlkə, bizim Trie ola bəri əgər
ki, bir olacaq deməkdir edildi yol aşağı ki, söz və siz ki
null qarşılaşma heç vaxt.
Belə null qarşılaşmadan, biz yalan.
Söz lüğətdə yoxdur.
Bu null deyil, onda biz olacaq Iterating davam, belə ki, biz gedirik
ki, qeyd etmək bizim kursor yeniləmə ki, index da xüsusi node.
>> Beləliklə, biz ərzində bunu saxlamaq bütün söz.
, Biz null hit heç vaxt hərfinin vasitələri Biz bütün vasitəsilə əldə edə bildik
dünya və Trie bir node tapmaq, lakin biz olduqca hələ həyata deyilik.
Biz yalnız True qayıtmaq istəmirəm.
Biz kursor səhv söz qayıtmaq istəyirəm pişik deyil bəri, yenidən xatırlamaq
bizim lüğət və fəlakət edir sonra biz uğurla vasitəsilə əldə edəcək
sözü pişik, lakin kursor söz Asma və True olacaq.
Beləliklə, biz göstərir kursor söz qayıtmaq olmadığını, bu node həqiqətən bir söz,
ki, çek üçün var.
>> Belə ki, ölçüsü kontrol imkan.
Belə ki, Size olduqca asan olacaq ildən, yük xatırlayıram, biz istəyirik
üçün lüğət ölçüsü incrementing Biz qarşılaşırıq ki, hər bir söz.
Belə ki, Size yalnız qayıtmaq üçün gedir Lüğət ölçüsü, və bu.
>> Bütün hüquqlar, belə nəhayət, biz boşaltmaq var.
Belə ki, boşaltmaq, biz istifadə etmək olacaq bir əslində bütün etmək üçün recursive funksiyası
bizə, belə ki, bizim funksiyası üçün iş azad etməyə çağırıb olacaq.
Nə azad etməyə nə gedir?
Biz azad etməyə gedir burada bax uşaqların bütün təkrarlamaq
bu node, və əgər uşaq node null deyil, sonra biz olacaq
uşaq node boşaltmaq.
>> Belə ki, bu recursively gedir bizim uşaqlar bütün boşaltmaq.
Biz əmin deyilik dəfə bizim uşaqlar bütün boşaldılır olub, sonra biz
özümüzü azad, belə ki, özümüz boşaltmaq bilər.
Belə ki, bu recursively boşaltmaq edəcək bütün Trie, və sonra bir dəfə
görülən, biz yalnız True qayıda bilər.
Boşaltmaq biz istəyirik, uğursuz bilməz yalnız şeyi azad.
Belə ki, bir dəfə biz azad tamamlayın hər şey, True qayıtmaq.
Və bu.
My name Rob və bu [işitilemez] idi.