Сортировка вставками. Дана последовательность чисел а1, а2 - VB
Формулировка задачи:
Сортировка вставками. Дана последовательность чисел а1, а2,..., аn. Требуется переставить числа в порядке возрастания. Делается это следующим образом. Пусть а1, а2,..., аi — упорядоченная последовательность, т.е. а1 ≤ a2 ≤ ... ≤ аi. Берется следующее число ai+1 и вставляется в последовательность так, чтобы новая последовательность была тоже возрастающей. Процесс производится до тех пор, пока все элементы от i +1 до n не будут перебраны. Примечание. Место помещения очередного элемента в отсортированную часть производить с помощью двоичного поиска. Двоичный поиск оформить в виде отдельной функции. Заранее благодарен всем за предоставленную помощь)
Решение задачи: «Сортировка вставками. Дана последовательность чисел а1, а2»
textual
Листинг программы
'::: A - Г¬Г*Г±Г±ГЁГў '::: n - ГІГҐГЄГіГ№Г*Гї äëèГ*Г* îòðåçêГ* Г¬Г*Г±Г±ГЁГўГ* '::: x - ГўГ±ГІГ*âëÿåìîå Г§Г*Г*Г·ГҐГ*ГЁГҐ '::: âîçâðГ*ГІ - Г*îìåð ïîçèöèè, ïîñëå êîòîðîé ГўГ±ГІГ*âëÿòü x Function binSearch(A() As Integer, n As Integer, x As Integer) As Integer If x < A(1) Then binSearch = 0 Exit Function ElseIf x >= A(n) Then binSearch = n Exit Function Else iBeg% = 1 iEnd% = n Do If iEnd% - iBeg% = 1 Then binSearch = iBeg% Exit Function Else iMid% = (iBeg% + iEnd%) \ 2 If A(iMid%) > x Then iEnd% = iMid% Else iBeg% = iMid% End If End If Loop End If End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д