Сұрыптау түрлері
Таңдау(selection sort) арқылы сұрыптау
Таңдау арқылы сұрыптау - Массивтегі ең кіші, ең үлкен элементті тауып, оны сұрыпталмаған элементтердің бірінші тұрғанымен ауыстыру
Таңдау арқылы
сұрыптауды өсу ретімен орындаудың бірінші қадамында массивтің
минималды элементі табылады да, ол бірінші тұрған элементпен
ауыстырылады. Массив екінші қадамды екінші элементтен бастап
қарастырады. Ең кіші элемент тауып, екінші элементпен орын
алмастырады. Әр элементтің ретін табу үшін осындай қадамдар
қайталанады. Әрбір жаңа қадам массивтің сұрыпталмаған бөлігінен
минимум мәнді тауып, оны ағымдағы элементпен
ауыстырады.
Код мысалы
Нәтижесі: а=[1,2,3,5,6]
Программада таңдау арқылы сұрыптау кіріктірілген циклдер негізінде жүзеге асырылады.
аrr массивін өсу ретімен таңдау арқылы сұрыптаудың коды
1-мысал.
0-ден 100-ге дейінгі кездейсоқ 10 саннан тұратын массивті өсу реті бойынша таңдау арқылы сұрыптау
Программалау коды

3-мысал
н
әтиже
![]()
4-мысал
нәтиже
Көпіршікті(bubble sort) сұрыптау
Көпіршікті сұрыптау – көршілес элементтерді бір-бірімен алыстыру арқылы сұрыптау әдісі
Әр итерацияда массив элементтерін жұбымен салыстырады. Егер жұптың орналасу тәртібі дұрыс болмаса, онда элементтер ауыстырылады. n-1 итерациялар өткеннен кейін массив сұрыпталады.
Әр итерациядан кейін массивтің
соңындағы ең үлкен элемент алдыңғы максимум элементінің қасында
тұрады. Минималды элемент әр уақытта массивтің басына қарай бір
позициямен жылжытылады (көпіршіктің суда көтерілген
сияқты).
Өсу ретімен көпіршікті сұрыптаудың коды
1-мысал

Сыртқы цикл n-1 итерацияларының орындалуына мүмкіндік береді. Ішкі цикл 0-ден (n-i-1)-ге дейінгі массивтің ағымдағы элементінің индексін таңдауға арналған.
2-мысал.
0-ден 100-ге дейінгі кездейсоқ 10 саннан тұратын массивті көпіршікті сұрыптау

Н
әтижесі:
Енгізу(кірістіру, sort by insert) арқылы сұрыптау
Кірістіру арқылы сұрыптау – Массивтегі элементтерін реттелмеген бөлігіндегі элемент реттелген бөлігіне кірістіріп тексеру арқылы сұрыптау
Бұл жолы енгізу арқылы сұрыптауды қарастырамыз (Insertion sort). Бұл әдіс әрбір элементтің бұрын сұрыпталған элементтер арасында белгілі бір позиция бойынша ауысуына негізделген. Барлық массив сұрыпталған және сұрыпталмаған болып шартты түрде екі бөлікке бөлінеді. Бастапқыда сұрыпталған бөлік бос болады. Әр қадамда массивтің келесі элементі сұрыпталған бөліктегі элементтермен салыстырылады және оны орналастыратын орын анықталады. Осылайша, сұрыпталған бөлікте элементтер әрдайым дұрыс тәртіпте болады. Алгоритм массивтің барлық элементі қарастырылғанға дейін орындалады.
1-мысал

Кему бойынша сұрыптау дәл осылай орындалады, бірақ цикл шартындағы белгіні ауыстыру керек. (A[j] > key орнына A[j] < key деп жазу керек).
Кей жағдайларда сұрыптауды жеке функция ретінде ұйымдастырған ыңғайлы.
Программалау коды:
2-мысал


3-мысал
nxn матрицасының негізгі диагоналінің элементтерін енгізу арқылы сұрыптайтын программа жазу керек.
Программалау коды:
A = [ [8, 8, 8, 8, 8] ,
[1, 1, 1, 1, 1] ,
[7, 7, 7, 7, 7] ,
[2, 2, 2, 2, 2] ,
[5, 5, 5, 5, 5] ]

4-мысал
nxn матрицасының бүйір диагоналінің элементтерін кему ретімен енгізу арқылы сұрыптайтын программа жазу керек.
Программалау коды:
A = [ [8, 8, 8, 8, 8] ,
[1, 1, 1, 1, 1] ,
[7, 7, 7, 7, 7] ,
[2, 2, 2, 2, 2] ,
[5, 5, 5, 5, 5]
]

5-мысал
нәтиже
![]()
6-мысал

нәтиже
![]()
Жылдам(fast sort) сұрыптау
Жылдам сұрыптау – cандық элементтерді өсу немесе кему ретімен, мәтіндік массив элементтерін алфавит ретімен сұрыптайды.
1-мысал

енгізу

нәтижесі

2-мысал
Нәтиже
![]()
жүктеу мүмкіндігіне ие боласыз
Бұл материал сайт қолданушысы жариялаған. Материалдың ішінде жазылған барлық ақпаратқа жауапкершілікті жариялаған қолданушы жауап береді. Ұстаз тілегі тек ақпаратты таратуға қолдау көрсетеді. Егер материал сіздің авторлық құқығыңызды бұзған болса немесе басқа да себептермен сайттан өшіру керек деп ойласаңыз осында жазыңыз
Python сұрыптау түрлері
Python сұрыптау түрлері
Сұрыптау түрлері
Таңдау(selection sort) арқылы сұрыптау
Таңдау арқылы сұрыптау - Массивтегі ең кіші, ең үлкен элементті тауып, оны сұрыпталмаған элементтердің бірінші тұрғанымен ауыстыру
Таңдау арқылы
сұрыптауды өсу ретімен орындаудың бірінші қадамында массивтің
минималды элементі табылады да, ол бірінші тұрған элементпен
ауыстырылады. Массив екінші қадамды екінші элементтен бастап
қарастырады. Ең кіші элемент тауып, екінші элементпен орын
алмастырады. Әр элементтің ретін табу үшін осындай қадамдар
қайталанады. Әрбір жаңа қадам массивтің сұрыпталмаған бөлігінен
минимум мәнді тауып, оны ағымдағы элементпен
ауыстырады.
Код мысалы
Нәтижесі: а=[1,2,3,5,6]
Программада таңдау арқылы сұрыптау кіріктірілген циклдер негізінде жүзеге асырылады.
аrr массивін өсу ретімен таңдау арқылы сұрыптаудың коды
1-мысал.
0-ден 100-ге дейінгі кездейсоқ 10 саннан тұратын массивті өсу реті бойынша таңдау арқылы сұрыптау
Программалау коды

3-мысал
н
әтиже
![]()
4-мысал
нәтиже
Көпіршікті(bubble sort) сұрыптау
Көпіршікті сұрыптау – көршілес элементтерді бір-бірімен алыстыру арқылы сұрыптау әдісі
Әр итерацияда массив элементтерін жұбымен салыстырады. Егер жұптың орналасу тәртібі дұрыс болмаса, онда элементтер ауыстырылады. n-1 итерациялар өткеннен кейін массив сұрыпталады.
Әр итерациядан кейін массивтің
соңындағы ең үлкен элемент алдыңғы максимум элементінің қасында
тұрады. Минималды элемент әр уақытта массивтің басына қарай бір
позициямен жылжытылады (көпіршіктің суда көтерілген
сияқты).
Өсу ретімен көпіршікті сұрыптаудың коды
1-мысал

Сыртқы цикл n-1 итерацияларының орындалуына мүмкіндік береді. Ішкі цикл 0-ден (n-i-1)-ге дейінгі массивтің ағымдағы элементінің индексін таңдауға арналған.
2-мысал.
0-ден 100-ге дейінгі кездейсоқ 10 саннан тұратын массивті көпіршікті сұрыптау

Н
әтижесі:
Енгізу(кірістіру, sort by insert) арқылы сұрыптау
Кірістіру арқылы сұрыптау – Массивтегі элементтерін реттелмеген бөлігіндегі элемент реттелген бөлігіне кірістіріп тексеру арқылы сұрыптау
Бұл жолы енгізу арқылы сұрыптауды қарастырамыз (Insertion sort). Бұл әдіс әрбір элементтің бұрын сұрыпталған элементтер арасында белгілі бір позиция бойынша ауысуына негізделген. Барлық массив сұрыпталған және сұрыпталмаған болып шартты түрде екі бөлікке бөлінеді. Бастапқыда сұрыпталған бөлік бос болады. Әр қадамда массивтің келесі элементі сұрыпталған бөліктегі элементтермен салыстырылады және оны орналастыратын орын анықталады. Осылайша, сұрыпталған бөлікте элементтер әрдайым дұрыс тәртіпте болады. Алгоритм массивтің барлық элементі қарастырылғанға дейін орындалады.
1-мысал

Кему бойынша сұрыптау дәл осылай орындалады, бірақ цикл шартындағы белгіні ауыстыру керек. (A[j] > key орнына A[j] < key деп жазу керек).
Кей жағдайларда сұрыптауды жеке функция ретінде ұйымдастырған ыңғайлы.
Программалау коды:
2-мысал


3-мысал
nxn матрицасының негізгі диагоналінің элементтерін енгізу арқылы сұрыптайтын программа жазу керек.
Программалау коды:
A = [ [8, 8, 8, 8, 8] ,
[1, 1, 1, 1, 1] ,
[7, 7, 7, 7, 7] ,
[2, 2, 2, 2, 2] ,
[5, 5, 5, 5, 5] ]

4-мысал
nxn матрицасының бүйір диагоналінің элементтерін кему ретімен енгізу арқылы сұрыптайтын программа жазу керек.
Программалау коды:
A = [ [8, 8, 8, 8, 8] ,
[1, 1, 1, 1, 1] ,
[7, 7, 7, 7, 7] ,
[2, 2, 2, 2, 2] ,
[5, 5, 5, 5, 5]
]

5-мысал
нәтиже
![]()
6-мысал

нәтиже
![]()
Жылдам(fast sort) сұрыптау
Жылдам сұрыптау – cандық элементтерді өсу немесе кему ретімен, мәтіндік массив элементтерін алфавит ретімен сұрыптайды.
1-мысал

енгізу

нәтижесі

2-мысал
Нәтиже
![]()
шағым қалдыра аласыз













