Bengilungiselela i-Google HashCode World Championship Finals 2017. Lona umncintiswano omkhulukazi onezinkinga ze-algorithmic ohlelwe yi-Google.
Ngiqale ukufunda i-C++ kusukela ekuqaleni ebangeni lesishiyagalolunye. Bengazi lutho mayelana nezinhlelo, ama-algorithms noma izakhiwo zedatha. Ngesinye isikhathi ngabhala umugqa wami wokuqala wekhodi. Ezinyangeni eziyisikhombisa kamuva, umncintiswano wezinhlelo wawusondela emkhathizwe. Bengifuna ukubona ukuthi isitayela sami sokufunda sisebenza kahle kangakanani. Bekuyithuba elihle.
Ngemva kwezinsuku ezimbili zokuncintisana, imiphumela yafika: Ngawina indondo yegolide.
Ngashaqeka. Bengingaphambi kwezimbangi ezinesipiliyoni seminyaka emi-5. Ngangazi ukuthi ngisebenze kanzima, kodwa le mpumelelo yadlula konke engangikulindele. Ngabona ukuthi ukuhlelwa kwezemidlalo kwakuyisihloko sami futhi ngangena ngaso sonke isikhathi.
Ngiyazi ukuthi yini eyangiholela empumelelweni futhi ngifuna ukwabelana nawe ngayo.
I-athikili ihunyushwe ngosekelo lwe-EDISON Software, okuyiyonainakekela impilo yabahleli bohlelo kanye nesidlo sasekuseni sabo Futhiithuthukisa isoftware yangokwezifiso .
Iluphi ulimi lokuhlela ongalukhetha
- C++ - Sincoma kakhulu! Uyashesha kakhulu. Ukusetshenziswa kwama-algorithms kuthatha isikhathi esincane ngenxa ye-STL. I-C++ yamukelwa kuyo yonke imiqhudelwano. Ngibhale umugqa wami wokuqala wekhodi ku-C++.
- C - Funda i-C++ ngenxa ye-STL. Uma wazi u-C, ungaphinda uhlele ku-C++.
- I-Java iwulimi lokuhlela olunensa. Inekilasi le-Big Integer, kodwa ngeke likusize kakhulu. Uma umncintiswano unomkhawulo wesikhathi, nge-Java ngokuqinisekile uzoweqa. I-Java ayamukelwa kuyo yonke imiqhudelwano.
Ungaprakthiza kuphi
Ngisikisela
Okokuqala, udinga ukucija ulwazi lwakho lwezisekelo
Uma usujwayele ukwakheka kolimi, kuba nezinkinga ezithile okufanele uzinqobe. Qala ngezinkinga ezilula ezidinga ukuzilolonga. Kulesi sigaba, into esemqoka ukucacisa isitayela sakho sohlelo. Mhlawumbe uyathanda ukubhala ikhodi enendawo emhlophe eningi, mhlawumbe awuthandi. Kungenzeka ukuthi ubeka abakaki emugqeni ofanayo nothi “uma”, noma ubeka imigqa ehlukene.
Kufanele uthole isitayela sakho sokuhlela ngoba YIsitayela SAKHO.
Uma uyifuna, khumbula izimiso ezimbili eziyisisekelo:
- Ikhodi yakho kufanele ibe lula ukuyisebenzisa. Kufanele uzizwe ukhululekile ukusebenzisa isixazululo oza naso. Kungani? Ngoba ngesikhathi somncintiswano, into yokugcina oyifunayo ukulahleka kukhodi yakho. Kuhlale kungcono ukuchitha amaminithi angu-5 engeziwe ucabanga ngendlela yokwenza lula ukuqaliswa kwekhodi kunokuchitha imizuzu eyi-10 uzama ukuyiqonda.
- Ikhodi yakho kufanele ifundeke kalula. Uma ikhodi ifundeka kalula, kulula ukuyisusa. Masibhekane nakho—izimbungulu zenzeka ngaso sonke isikhathi. Uyawazi lowo muzwa uma usalelwe yimizuzu eyi-10 futhi ungalitholi iphutha elikhulu? Yebo kunjalo. Ukuze ugweme lesi simo, bhala ikhodi efundekayo. Uma usuqalile ukuyisusa, ikhodi izobonakala ingokwemvelo futhi kulula ukuyiqonda.
Ungawathuthukisa Kanjani Amakhono Akho Okuthuthukisa
Zijwayeze, zijwayeze futhi uzijwayeze okwengeziwe. Ngincoma ukuthi ubhekane nezinkinga zokuqala ezingama-250 ezingaxazululeka kakhulu kuzo
Ungasho ukuthi: "Le nkinga inzima kakhulu kimi, ngizozama ukuxazulula okulandelayo." Bacabanga kanjena abehlulwayo.
Thatha isiqeshana sephepha nepensela. Cabanga ngakho. Mhlawumbe ungathola isixazululo, mhlawumbe hhayi. Okungenani, uzothuthukisa ukucabanga kwe-algorithmic. Uma ungakwazi ukuqhamuka nesixazululo phakathi nehora, bheka isixazululo esenziwe ngomumo esithangamini noma kuma-athikili.
Yini ozoyizuza ngale ndlela? Funda ukwenza ngokushesha imibono yakho usebenzisa ikhodi. Futhi funda izinkinga zakudala nama-algorithms.
Okwesibili, kufanele wazi ama-algorithms nezakhiwo zedatha
Landela indlela ye-hierarchical. Uqale ukugijima ungazi ukuthi kuhamba kanjani? Cha. Ungakwazi yini ukwakha i-skyscraper ngaphandle kwesisekelo esiqinile? Ngeke futhi.
Awukwazi ukuziba izinyathelo endleleni yokufunda. Uma ungazinaki, uzosala nezikhala zolwazi. Ngokuhamba kwesikhathi zizoba zimbi kakhulu.
Qala ngama-algorithms ayisisekelo kanye nezakhiwo zedatha
Kunzima ukuqala. Mhlawumbe ngoba awazi ukuthi yini okufanele ufunde kuqala. Yingakho ke
Uma usebenza ekuxazululeni izinkinga ezilula, awusoze wathuthuka.
Indlela ephumelela kakhulu yokuqonda lokho ongakwazi ukukuthola ngokusebenza. Ngafunda kanjalo. Ngafunda amasu amaningi amasha engangingakaze ngizwe ngaphambili ngokukhetha umsebenzi oyinselele.
Yonke inkinga yesithathu osebenza kuyo kufanele ikufundise okuthile okusha. Qaphela kakhulu lapho ukhetha izinkinga. Khetha izinkinga ezinzima kakhulu!
Uma usuqedele lezi zinkinga ezingu-250 ezivela ku-SPOJ, uzoba nokuqonda okuyisisekelo kwezihloko eziyinhloko zokuhlelwa kwezemidlalo. Ngokuqonda okujulile komqondo ongemuva kwama-algorithms ayisisekelo, ama-algorithms ezinga eliphezulu azobonakala eyinkimbinkimbi kangako. Ngale ndlela ungalusebenzisa ngokugcwele ulwazi lwakho.
Gcoba ujule endikimbeni ngayinye eyinhloko
Uma ungaqinisi ulwazi lwakho ngemva kokufunda okuthile okusha, uzokhohlwa ngokushesha yonke into.
Ngincoma ukuthi ngemuva kokufunda i-algorithm entsha, uyisebenzise ekusebenzeni. Sebenza ngemisebenzi engu-2-3. Bheka umaka we-algorithm ku-SPOJ. Lapho uzothola izinkinga ezidinga le algorithm ukuzixazulula. Bhekana nalezi zinkinga kuqala.
I-Master Dynamic Programming Ngoba Izokuholela Ekunqobeni
Ngokuhlangenwe nakho kwami, yonke imiqhudelwano inenkinga okungenani eyodwa
Futhi lokhu kuhle. Ngoba uma uqonda izinhlelo eziguquguqukayo, uzowina.
Ngiyathanda ukuhlela okuguquguqukayo, isihloko sami engisithandayo. Imfihlo yezinhlelo eziguquguqukayo ukwenza ukukhetha okuhle emhlabeni jikelele, hhayi nje okwasendaweni. Kufanele uhlukanise inkinga ibe yizinkinga ezincane ezilula. Rarulula ngayinye yalezi zinkinga ezincane kanye kuphela. Bese udala isisombululo esihlanganisa izinkinga ezincane ezixazululiwe.
Ngenkathi ufunda imiqondo emisha, bheka
Sebenza kanzima
Wake wezwa ngabasubathi abawina ama-Olympics ngaphandle kweminyaka yokuzilolonga? Mina akunjalo.
Njalo ngonyaka, amalungiselelo e-Computer Olympiad aqala ngo-September futhi aphela ngo-April.
Nsuku zonke kulezi zinyanga eziyi-8 ngangizilolongela amahora ama-5.
Futhi yebo, ngisebenzise lawa mahora angu-5 kuphela ukuxazulula izinkinga ze-algorithmic. Ngikhumbula izinsuku lapho ngangizilolongela amahora angu-8 ngisho nayi-10. Kungani? Ngoba ngangikuthanda. Nsuku zonke lapho ngibuya esikoleni, ngangiqonda ekamelweni, ngihlale phansi kuyi-computer futhi ngiqale ukuhlaziya inkinga entsha. Noma bengifunda i-algorithm entsha ebengidinga ukuyazi ukuxazulula le nkinga.
Uma ufuna ukunqoba, kufanele wenze okufanayo. Khetha inkinga bese unamathela kuyo. Cabanga ngakho ngenkathi uya esitolo noma ngenkathi ushayela.
Ubuwazi ukuthi lapho ulele, ubuchopho bakho buhlukanisa ulwazi oluqoqwe ngalolo suku? Ubonakala epakisha izincwadi ngokulandelana kwezinhlamvu eshalofini lezincwadi. Empeleni, ingqondo yakho icabanga ngezinkinga ezihlukahlukene obhekene nazo.
Lokhu kungasetshenziswa ngokuhlakanipha. Ngaphambi kokulala, funda inkinga enzima futhi ukhumbule ukuthi yini edingekayo ukuze uyixazulule. Kulesi sigaba, awudingi ukubheka ikhambi ngokwalo. Iya Embhedeni. Ubuchopho bakho buzoqala ukucubungula le nkinga. Lapho uvuka, uzomangala ukubona ukuthi ikhambi ulitholile ngenkathi ulele.
Zizame wena. Kufana nomlingo.
Ngidale ibhulogi yevidiyo
Lesi sigaba esifushane asihlobene nezinhlelo zezemidlalo. Uma uneminyaka engamashumi amabili ubudala futhi uzibuza ukuthi ngiwubona kanjani umhlaba, ungase ufune ukuhlola
Sebenza ngobuhlakani
Lena imfihlo yempumelelo. Udinga imigomo.
Singabantu futhi siyayithanda
Ungakunqoba kanjani ukuhlehlisa izinto
Zibekele imigomo. Uzothola izinkinga ezithakazelisayo lapho ungafunda khona okuthile okusha (bheka izinsiza engizishilo ngenhla). Kodwa lezi zinkinga zidinga ukuxazululwa, hhayi nje ukufunda ngazo.
Nansi-ke indlela engakunqoba ngayo ukuhlehlisa izinto. Ngaqala ikhalenda lephepha futhi usuku ngalunye ngagcwalisa izinkinga engangifuna ukuzixazulula. Ngangihlale ngigcwalisa izinkinga ezinsukwini ezimbili kusengaphambili. Ngakho ngangazi ukuthi ngingasiphatha kanjani isikhathi sami ezinsukwini ezilandelayo.
Ngakho ngangihlale ngikhuthazekile. Kwakudingeka ngixazulule izinkinga ezithile futhi ngithole ezintsha ukuze ngigcwalise izinsuku ezilandelayo ekhalendeni. Ukweqa izinkinga ezixazululiwe kuzwakala kukuhle. Ngiyazi ukuthi nawe uyayithanda.
Zitholele elakho ikhalenda lephepha. Ungadali olunye uhlu lwezinto zokwenziwa ocingweni lwakho ozokhohlwa ngalo kusasa.
Ukulungisa kanjani iphutha ngokuphumelelayo
Ingabe ufuna ukuba uchwepheshe? Uma kunjalo, udinga "ukuyisusa iphutha engqondweni yakho."
Lokhu kuyindlela esebenza kahle kakhulu yokususa iphutha engiyaziyo ngoba ayidingi nhlobo isilungisi-maphutha. Ubuchopho bakho buhlola amagatsha ekhodi amaningi ngesikhathi esisodwa futhi bukunikeza ukubuka konke okubanzi kakhulu kwekhodi uma kuqhathaniswa
Ungaziqhathanisa nogogo odlala i-chess futhi ocabanga ukuya phambili oku-3.
Ngisebenzisa le nqubo njengomugqa wami wokuqala wokuzivikela. Bese ngisebenzisa i-debugger yangempela.
Ukuze ufunde ukulungisa iphutha ekhanda lakho, udinga ukuzijwayeza. Uma uqinisekisa isixazululo senkinga futhi uthola "impendulo engalungile", ungayi ngqo enkinobho yokususa iphutha. Phinda ufunde ikhodi bese ucabanga: “Kwenzekani kulo mugqa?”, “Ingabe elithi “uma” lapha liluthinta kanjani uhlelo?”, “Uma siphuma ku-loop, lingakanani inani le-iterator?”
Ngale ndlela uzicabangela wena. Ngokuhamba kwesikhathi, uzofunda ukubhala ikhodi futhi uyilungise ngokushesha.
Mayelana nomlobi
U-Andrei Margeloiu ungumhleli wezinhlelo onentshisekelo kwezamabhizinisi, iziqalo, nangaphandle. Ungaxhumana naye
Ukuhumusha: Diana Sheremyeva
Source: www.habr.com