Нәтижесі:
reverse() әдісі элементтерді кері бағытта орналастыруға мүмкіндік береді.
№27. Түстер массиві берілген. Түс атауларын кері алфавиттік ретпен орналастыр.
Программасы:
Нәтижесі:
sorted() функциясы тізімді өзгертпейді, бірақ жаңа тізім жасайды.
Осылайша, реттелген тізім негізінде жаңа тізім шығады.
№28. Кездейсоқ 10 бүтін саннан тұратын массив жасалады. Элементтері өсу ретімен орналасатын жаңа массив құра.
Программасы:
Нәтижесі:
Көпіршікті сұрыптау массив арқылы бірнеше рет өтуді қамтиды. Әр өтуде кезекті элемент келесі элементпен салыстырылады. Егер келесі элемент үлкен болса (өсу ретімен сұрыптағанда), онда массив элементтері ауыстырылады.
Осылайша, массив бірінші рет өсу ретімен сұрыпталғанда, массивтің соңғы мәні ең үлкен болады. Келесі салыстыруда соңғы элементтің алдындағы мән қалған сандардың үлкені болады. Соңғы және соңғының алдындағы сандарды салыстырудың мағынасы жоқ. Демек, әр өту кезіндегі қаралған массив элементтерінің саны 1-ге азаяды. Өту саны массив элементтерінің санынан бірге кем болады, өйткені жұптық салыстыру арқылы жүргізіледі.
Мысалы, «5 1 4 2 8» массиві берілген және оларды өсуі бойынша сұрыптайық, ол үшін көпіршік әдісін қолданамыз. Қарамен белгіленген элементтер, мына кезеңде салыстырылып отырылған элементтер.
Бірінші жол:
(5 1 4 2 8) (1 5 4 2 8), Мұнда алгоритм бастапқы екі элементті салыстырып,
орындарын ауыстыруда, себебі 5 > 1
(1 5 4 2 8) (1 4 5 2 8), Орындарын ауыстырады, себебі 5 > 4
(1 4 5 2 8) (1 4 2 5 8), Орындарын ауыстырады, себебі 5 > 2
(1 4 2 5 8) (1 4 2 5 8), Енді әрбір элемент өз орнында тұрған себепті (8 > 5), алгоритм олардың орнын ауыстырмайды.
Екінші жол:
(1 4 2 5 8) (1 4 2 5 8)
(1 4 2 5 8) (1 2 4 5 8), Орындарын ауыстырады, себебі 4 > 2
(1 2 4 5 8) (1 2 4 5 8)
Енді алгоритм толықтай сұрыпталды, бірақ программаның оған көзі жеткен жоқ. Сол себепті программа тағы бір толық жол өткізеді.
Үшінші жол:
(1 2 4 5 8) (1 2 4 5 8)
(1 2 4 5 8) (1 2 4 5 8)
№29. Кездейсоқ сандармен толтырылған массивті өсу бойынша "көпіршік" әдісімен сұрыптау. Бастапқы және сұрыпталған түрдегі массивті шығару.
Программасы:
Нәтижесі:
Достарыңызбен бөлісу: |