СҰРЫПТАУ Бүгін біз сұрыптауға тоқталамыз.
Алгорим сипаттамасы:
Сұрыптаудың негізгі идеясы массивтегі көршілес элементтерді жұптап салыстыру болып табылады. Бағдарлама орындалған соң кішісінен үлкен элементке қарай сұрыптау жүргізілетін болады.
Мысалы:
Бізде келесі массив бар: 7 2 9 4 1 0
Алғашқы итерация. Массивтің нөлінші элементін (мұнда 7) көршілес тұрған элементпен салыстырамыз:
7<>2 9 4 1 0
7 саны 2-ден үлкен болғандықтан олардың орнын ауыстырамыз. Келесі массив шығады:
2 7 9 4 1 0
Содан соң, 7 мен 9-ды салыстырамыз.
2 7<>9 4 1 0
9 саны 7-ден үлкен болғандықтан өз орнында қалады. Енді, 9 санын көршілес элементтерімен салыстаратын боламыз. Орындары келесідей ауысады:
2 7 9<>4 1 0
2 7 4 9<>1 0
2 7 4 1 9<>0 2 7 4 1 0 9 9-дан үлкен сан болмағандықтан, алғашқы итерацияны аяқтаймыз. Енді біз мәні 9-дан кіші, бірақ басқаларынан үлкен санды табамыз. 9-ға тиісудің қажеті болмайды, себебі ол онсыз да ең үлкен элемент. Сондықтан, итерация қадамдары 1-ге кемитін болады (n-1).
Екінші итерация. Біз қайтадан массивтің нөлінші элементін (2) алып, көршілес элементпен салыстырамыз.
2<>7 4 1 0 9 2 саны 7-ден кем, бірақ олар орындарымен ауыспайды. Келесі қадамда 7 санын көршілес элементпен салыстыру болады.
2 7<>4 1 0 9 Келесі:
2 4 7<>1 0 9 Келесі:
2 4 1 7<>0 9 Тамаша, біз екінші элементті таптық, ол массивте соңынан санағанда екінші орын алады. Екінші итерация аяқталды. Итерация қадамын 1-ге кішірейтеміз. Өйткені, 7-мен салыстырудың қажеттілігі жоқ.
Екінші итерациядан кейінгі біздің массивтің күйі:
2 4 1 0 7 9 Үшінші итерация. Барлығын осылай қайталаймыз. Нөлінші элементтен бастап, қалған сандардың ішінен үлкенін іздейміз.
2<>4 1 0 7 9 2 4<>1 0 7 9 2 1 4<>07 9 Қорытындысы:
2 1 0 4 7 9 Үшінші итерация аяқталды. Төртіншіні бастаймыз.