摘要: 1 #include "pch.h" 2 #include <iostream> 3 #include <cmath> 4 //优先级队列用完全二叉堆实现 5 //使用数组存储某结点i的父结点为(i-1)/2下整,左孩子结点为2*i+1,右孩子结点为2*i+2 6 //二叉堆的上滤操作 7 //大根 阅读全文
posted @ 2019-11-12 15:51 Royzzzzz 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 // 该算法的思想是假设待排序序列设置为这样: pivot|L||R||比较序列| 4 // 每次pivot和比较序列(一般我们设数组首元素为pivot,则为数组第二个元素开始往后的序列) 5 // 我们记录了L的 阅读全文
posted @ 2019-11-12 15:36 Royzzzzz 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 void selectionSort(int arr[], int n) { 4 int min = 0; 5 for (int i = 0; i < n-1; i++) { //总共由n-1趟 6 min = i 阅读全文
posted @ 2019-11-12 15:28 Royzzzzz 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 1 template<typename DataType> 2 struct Node 3 { 4 DataType data; 5 Node<DataType> *next; 6 }; 7 const int MaxSize = 101; //实际应该由序列中的最大值决定 8 Node<int> 阅读全文
posted @ 2019-11-12 15:21 Royzzzzz 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 //计数排序,本质和桶排序一样 4 //该方法的思想是构造一个简单哈希表H(key)=key(由于对哈希表的查询等操作不作要求,这里使用简单的排解冲突方式) 5 //实际上你根本不需要构造所谓的哈希表,然后排解冲突 阅读全文
posted @ 2019-11-12 15:11 Royzzzzz 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 void Sort(int arr[],int lo, int mid,int hi) { 4 int i, j, k; 5 int n1 = mid - lo + 1; 6 int n2 = hi - mid; 阅读全文
posted @ 2019-11-12 14:29 Royzzzzz 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 void shellSort(int *a, int n) 4 { 5 int d; 6 int j; 7 int i; 8 int k; 9 int temp; 10 for (d = n / 2; d >= 1 阅读全文
posted @ 2019-11-12 13:59 Royzzzzz 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 1 #include "pch.h" 2 #include <iostream> 3 void InsertionSort(int *a, int len) 4 { 5 for (int j = 1; j < len; j++) 6 { 7 int key = a[j]; //从第二个元素开始,左边 阅读全文
posted @ 2019-11-12 13:53 Royzzzzz 阅读(107) 评论(0) 推荐(0) 编辑