Сортировка вставками. Дана последовательность чисел а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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы