![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
算法与数据结构
SL Zhong
111
展开
-
基数排序
复杂度和稳定性时间复杂度:最好、最差、平均都是O(N*K)空间复杂度:O(N+K)K为桶的个数稳定性:稳定CPP实现#include <vector>#include <time.h>#include <stdlib.h>using namespace std;//获取数组中的数字的最大位数int get_max_bit(vector<...原创 2020-01-21 17:09:48 · 60 阅读 · 0 评论 -
堆排序
复杂度和稳定性时间复杂度:最好、最坏、平均:O(N*ln(N))稳定性:不稳定CPP实现:#include <vector>#include <time.h>#include <stdlib.h>using namespace std;void make_heap_max(vector<int>& v, int start, ...原创 2020-01-19 01:33:06 · 56 阅读 · 0 评论 -
希尔排序
复杂度和稳定性时间复杂度:平均O(Nln(N)),最好O(N),最差O(NN)空间复杂度:O(1)稳定性:不稳定CPP实现#include <vector>#include <stdlib.h>#include <time.h>using namespace std;void shell_sort(vector<int>& ...原创 2020-01-18 00:38:20 · 65 阅读 · 0 评论 -
插入排序和选择排序
插入排序一、复杂度和稳定性时间复杂度:最坏和平均:O(N*N),最好O(N)空间复杂度:O(1)稳定性:稳定二、CPP实现#include <vector>#include <stdlib.h>#include <time.h>using namespace std;void insert_sort(vector<int>&...原创 2020-01-17 02:48:57 · 80 阅读 · 0 评论 -
归并排序
一、复杂度和稳定性时间复杂度:平均,最好,最坏:O(N*ln(N))空间复杂度:O(N)稳定性:稳定二、CPP实现#include <vector>using namespace std;void merge(vector<int>& src, vector<int>& tmp, int s, int e, int m){ in...原创 2020-01-15 02:21:13 · 75 阅读 · 0 评论 -
冒泡和快排
一、冒泡1、复杂度和稳定性时间复杂度:平均:O(N2),最坏(N2),最好(N)(#define AVOID_ORDERED)空间复杂度O(1)稳定性:稳定2、CPP实现#include<vecctor>using namespace std;#ifdef AVOID_ORDEREDbool bChange = false;#endifvoid bubby_s...原创 2020-01-14 01:27:02 · 119 阅读 · 0 评论