摘要: 选择排序即简单选择排序 最坏的时间复杂度是O(\(n^2\)),最好的时间复杂度也是O(\(n^2\)),平均时间复杂度是O(\(n^2\)) 没有用到额外的空间 所以空间复杂度是O(1) 选择排序是不稳定的 void selectionsort(vector<int> &a) { for(int 阅读全文
posted @ 2020-07-20 18:00 Akmf's_blog 阅读(160) 评论(0) 推荐(0)
摘要: 留白 阅读全文
posted @ 2020-07-17 21:51 Akmf's_blog 阅读(70) 评论(0) 推荐(0)
摘要: 19 删除链表的倒数第N个结点 109 有序链表转换二叉搜索树 160 相交链表 328 奇偶链表 1019 链表中的下一个更大节点 面试题 02.04. 分割链表 阅读全文
posted @ 2020-07-14 18:10 Akmf's_blog 阅读(53) 评论(0) 推荐(0)
摘要: 堆排序部分 阅读全文
posted @ 2020-07-10 16:15 Akmf's_blog 阅读(231) 评论(0) 推荐(0)
摘要: 希尔排序 空间复杂度为O(1) 时间复杂度为最坏情况为O(\(n^{2}\)),最好情况是O(\(n^{1.3}\)),平均为O(nlogn) 是不稳定的 #include<iostream> using namespace std; #include<vector> typedef int Ele 阅读全文
posted @ 2020-07-09 19:56 Akmf's_blog 阅读(104) 评论(0) 推荐(0)
摘要: 折半插入排序 空间复杂度O(1) 时间复杂度最好情况是O(nlogn) 最坏情况是O(n²),平均为O(n²) 与直接插入排序相比,折半插入排序在查找插入位置上面所花的时间大大减少 比较次数减少了,但是移动次数没变 对于数据量不大的排序表,能表现很好的性能 稳定的排序方法 #include<iost 阅读全文
posted @ 2020-07-09 18:04 Akmf's_blog 阅读(136) 评论(0) 推荐(0)
摘要: 直接插入排序 空间复杂度O(1) 时间复杂度最好情况是O(n),最坏情况是O(n²),平均情况是O(n²) 是稳定的内排序算法 从后往前比较,把后面的元素作为哨兵 #include<iostream> using namespace std; #include<vector> void Insert 阅读全文
posted @ 2020-07-09 17:05 Akmf's_blog 阅读(136) 评论(0) 推荐(0)
摘要: #include<iostream> using namespace std; typedef int ElemType; #define MAXSIZE 5 typedef struct { ElemType data[MAXSIZE]; int front; int rear; }SqQueue 阅读全文
posted @ 2020-07-08 19:13 Akmf's_blog 阅读(57) 评论(0) 推荐(0)
摘要: #1、使用yield import time #并发 def task1(): while True: print(" 1 ") time.sleep(0.5) yield def task2(): while True: print(" 2 ") time.sleep(0.5) yield def 阅读全文
posted @ 2020-06-19 15:48 Akmf's_blog 阅读(72) 评论(0) 推荐(0)
摘要: import socket import threading def recv_msg(udp_socket): """接受数据""" while True: recv_data = udp_socket.recvfrom(1024) print(recv_data) def send_msg(ud 阅读全文
posted @ 2020-06-18 10:10 Akmf's_blog 阅读(81) 评论(0) 推荐(0)