როგორ დავწეროთ ალგორითმები დამწყებთათვის

გვიანობამდე მუშაობს თავის ოფისში

სურათის კრედიტი: vgajic/E+/GettyImages

ახალი ალგორითმების შემუშავება შეიძლება ახალი პროგრამისტებისთვის დამაშინებლად ჩანდეს, მაგრამ ეს არის უნარი, რომელიც შეიძლება გამოიყენონ, როგორც ნებისმიერი სხვა. დაიწყეთ დამწყებთათვის ალგორითმის ამოცანების წიგნის მოძიებით ან ონლაინ ან ოფლაინ კომპიუტერული მეცნიერების გაკვეთილის გავლით. ივარჯიშეთ ალგორითმის დიზაინის საფუძვლების დაუფლებაში, მათ შორის სირთულის და მუშაობის დროის შეფასება, შემოწმება ზღვრული შემთხვევებისთვის, რამაც შეიძლება გამოიწვიოს პრობლემები კომპიუტერის ალგორითმისთვის და პრობლემების მცირედ დაყოფა ნაწილები.

რა არის კომპიუტერული ალგორითმი

ალგორითმი არის პროცედურა, რომელსაც კომპიუტერი ან ადამიანი მიჰყვება პრობლემის გადასაჭრელად. Long Division არის ნიმუშის ალგორითმი, რომლის შესრულებასაც ბევრი ადამიანი სწავლობს სკოლაში. ევკლიდეს ალგორითმი, რომელიც გამოიყენება ორი რიცხვის უდიდესი საერთო გამყოფის მოსაძებნად, კიდევ ერთი გავრცელებული მაგალითია.

დღის ვიდეო

კომპიუტერული ალგორითმი საბოლოოდ იწერება პროგრამირების ენაზე, რომელიც კომპიუტერს ესმის, მაგრამ როდესაც ალგორითმი მუშაობს შემუშავებული, პროგრამისტები და კომპიუტერის მეცნიერები ხშირად წერენ მას ჯერ არაფორმალურად პროზაულად და შემდეგ უფრო ფორმალურად ზოგადი ფორმატით ე.წ. ფსევდოკოდი.

ფსევდოკოდი ჰგავს პროგრამირების ენას, მაგრამ რადგან ის შექმნილია ადამიანების წასაკითხად და არა კომპიუტერებისთვის, მას არ გააჩნია მკაცრი სინტაქსური წესები.

მარტივი ალგორითმის მაგალითები დამწყებთათვის

ალგორითმების ცნობილ მაგალითებს ხშირად ასწავლიან დამწყებ კომპიუტერულ მეცნიერებსა და პროგრამისტებს. ზოგიერთი მაგალითია დიკსტრას ალგორითმი, რომელიც გამოიყენება გრაფიკების თეორიაში ორ წერტილს შორის უმოკლესი გზის საპოვნელად; Merge Sort, რომელიც გამოიყენება მონაცემთა სიების დასალაგებლად; და RSA ალგორითმი, რომელიც გამოიყენება მონაცემთა დაშიფვრისთვის. ბევრი მათგანი ხელმისაწვდომია ონლაინ უფასო სახელმძღვანელოებში, ვიდეოებსა და სასწავლო მასალაში.

ონლაინ სასწავლო საიტზე Khan Academy-ს აქვს ალგორითმის მრავალი მაგალითი, რომლითაც დამწყებთათვის შეუძლიათ ექსპერიმენტები. ძირითადი უნივერსიტეტები, როგორიცაა ჰარვარდი, სტენფორდი და მასაჩუსეტსის ტექნოლოგიური ინსტიტუტი, ქმნიან კურიკულუმებს მასალები და კურსის ვიდეოები საერთო ალგორითმებით, რომლებიც ხელმისაწვდომია ინტერნეტში შესავალი კომპიუტერული მეცნიერებისთვის კლასები.

ასევე არის საიტები პროგრამირების კონკურსის პრობლემებით და მათი გადაჭრის ახსნა-განმარტებით, რაც დაეხმარება ადამიანებს, რომლებიც დაინტერესებულნი არიან თავიანთი უნარების განვითარებაში.

ალგორითმის მოსაზრებები

როდესაც თქვენ შექმნით ახალ ალგორითმს, გსურთ დარწმუნდეთ, რომ ის მუშაობს ყველა შემთხვევაში, როდესაც ფიქრობთ, რომ ასეა და შეეცადეთ გაიგოთ რამდენად ეფექტურია ის. როგორც წესი, პროგრამისტები ყოფენ ალგორითმს დისკრეტულ ნაწილებად, რათა იფიქრონ იმაზე, თუ როგორ მუშაობს თითოეული ნაწილი და რამდენი დრო სჭირდება. ამას ეწოდება მოდულური დიზაინი.

კარგი იდეაა, სანამ კოდის დაწერას დაიწყებთ, თავად შეამოწმოთ ალგორითმი კალმით და ქაღალდით რამდენიმე მარტივ საქმეზე. როდესაც ფიქრობთ ეფექტურობაზე, იფიქრეთ საშუალო შემთხვევაზე, ჩვეულებრივ სიტუაციებზე, რომლებსაც თქვენი ალგორითმი სავარაუდოდ შეხვდება და უარეს შემთხვევაში მუშაობის ხანგრძლივობა. ყველაზე ცუდ შემთხვევაში გაშვების დრო ხშირად წარმოდგენილია Big-O ნოტაციით.

კატეგორიები

Ბოლო

როგორ შეინახოთ ვიდეო ფლეშ დრაივში

როგორ შეინახოთ ვიდეო ფლეშ დრაივში

ფლეშ დრაივები შეიძლება გამოყენებულ იქნას ვიდეო...

როგორ ატვირთოთ ვიდეო Badoo-ში

როგორ ატვირთოთ ვიდეო Badoo-ში

როგორ ატვირთოთ ვიდეო Badoo-ში. Badoo არის ონლაი...

როგორ გამოვიყენოთ ვებკამერა Yahoo Messenger-ით

როგორ გამოვიყენოთ ვებკამერა Yahoo Messenger-ით

განახორციელეთ უფასო ზარები კომპიუტერიდან კომპი...