forked from UNN/2026-rff_mp
удаление сортировки для хештаблицы (реализована в MyData)
This commit is contained in:
parent
4a214a2843
commit
b9c4421127
|
|
@ -1,37 +0,0 @@
|
||||||
package hash_table
|
|
||||||
|
|
||||||
func QSortElementsHT(arr []elementHT, l, r int) []elementHT {
|
|
||||||
if l < r {
|
|
||||||
s := Partition_Hoa(arr, l, r)
|
|
||||||
arr = QSortElementsHT(arr, l, s)
|
|
||||||
arr = QSortElementsHT(arr, s+1, r)
|
|
||||||
}
|
|
||||||
return arr
|
|
||||||
}
|
|
||||||
|
|
||||||
func Partition_Hoa(arr []elementHT, l, r int) int {
|
|
||||||
p := arr[(l+r)/2].name
|
|
||||||
i := l - 1
|
|
||||||
j := r + 1
|
|
||||||
|
|
||||||
for {
|
|
||||||
for {
|
|
||||||
i++
|
|
||||||
if arr[i].name >= p {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for {
|
|
||||||
j--
|
|
||||||
if arr[j].name <= p {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if i >= j {
|
|
||||||
return j
|
|
||||||
}
|
|
||||||
|
|
||||||
arr[i], arr[j] = arr[j], arr[i]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Reference in New Issue
Block a user