基數排序(counting sort)
木桶排序(bucket sort)
基數排序(radix sort)
引用
例說資料結構&stl
十大經典排序演算法(**演示)
菜鳥教程
排序演算法總結
海量資料處理 - 10億個數中找出最大的10000個數(top k問題)
海量資料排序——如果有1tb的資料需要排序,但只有32gb的記憶體如何排序處理?
【動態規劃】求陣列不相鄰元素之和最大
void
insert_sort
(int arr,
int len)}}
//改進演算法
void
insert_sort
(int arr,
int len)
}//再改進
void
insert_sort
(int arr,
int len)
希爾排序演算法是一種改進的插入排序演算法。
void
shell_sort
(int arr,
int len)
}//實現2
void
shell_sort
(int arr,
int len)}}
}
**歸併排序
void
merge_sort
(int arr,
int len)
void
sort
(int arr,
int left,
int right,
int*temp)
}void
merge
(int arr,
int left,
int mid,
int right,
int*temp)
while
(i <= mid)
temp[n++
]= arr[i++];
while
(j <= right)
temp[n++
]= arr[j++];
for(
int i =
0; i < n; i++
)//std::cout << std::endl;
}
快速排序
void
quick_sort
(int arr,
int left,
int right)
while
(i < j&&arr[i]
< x)
i++;if
(i < j)
} arr[i]
= x;
quick_sort
(arr, left, i -1)
;quick_sort
(arr, i +
1, right);}
}
堆的性質:
堆的常用方法:
#include
#include
#define init_size 2
class
heap
// heap(int num);
~heap()
;void
push_heap
(int target)
;int
top_heap
(int
& target)
;int
get_size()
const
;heap
(const heap& heap)
=delete
; heap operator=(
const heap& heap)
=delete
;private
:int size;
int free;
//int length;
public
:int
* ptr;};
heap::
~heap()
void heap::
push_heap
(int target)
int i = size;
//最後乙個節點的父節點為(i - 1)/ 2
ptr[size]
= target;
size++
;//最後乙個節點的父節點為 size / 2 - 1
free--;if
(i >0)
else
break;}
}}int heap::
top_heap
(int
&target)
else
}while
(i < size)
size--
; free++;if
((free + size)
> init_size && free >
2* size)
return0;
}int heap::
get_size()
const
intmain()
; int* p2 = new int[4];
memcpy(p2, p1, 2*sizeof(int));
for (int i = 0; i < 2; i++)
cout << p2[i] << ' ';
cout << endl;
*/ cout <<
"raw: "
;for
(int i =
0; i <
6; i++
) cout << endl;
cout <<
"heap: "
;int size = heap.
get_size()
;for
(int i =
0; i < size; i++
) cout <<
(heap.ptr)
[i]<<
' ';
cout << endl;
int x;
cout <<
"top_heap: "
;for
(int i =
0; i < size; i++)
cout << endl;
//cout << "size = " << heap.get_size() << endl;
return0;
}
演算法步驟
基數排序
演算法的步驟如下:
C 排序演算法
最基本的 氣泡排序 c code using system namespace bubblesorter j public class mainclass bubblesorter sh new bubblesorter sh.sort iarrary for intm 0 m iarrary.le...
C 排序演算法
protected int bubbleup int array 氣泡排序 return array public int selectionsorter int list 選擇排序 int temp list min list min list i list i temp return list ...
C 演算法排序
不廢話,上 using system using system.collections.generic using system.linq using system.text using system.threading.tasks namespace 排序演算法 陣列 氣泡排序 選則排序 arra...