基础数据结构
文章平均质量分 63
懒懒的小蜜蜂
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
6.简单选择排序,堆排序,桶排序,(基础数据结构)
一.简单选择排序和堆排序选择排序:每次从待排序队列中找到最小值,和待排序队列的第一位交换即可选择排序具体实现代码://时间复杂度O(n^2) 空间复杂度O(1) 不稳定的 void SelectSort(int arr[], int len) { //assert int minindex; //存放最小值的下标 for(int i=0; i<len-1; i++) { minindex = i; //循环开始前先认为待原创 2021-05-28 14:57:37 · 237 阅读 · 0 评论 -
4.串和字符串查找算法(基础数据结构)
BF算法有哪些特点:优点:容易理解缺点:时间复杂度太大了,是O(n*m)那么为什么还要有KMP算法:i 不回退,打死都不回退KMP算法极端情况下,时间复杂度为O(n+m)K M P 是发现这个算法的三个外国数学家的名字首字母两个难点:i 为什么不回退?j 回退到哪了?...原创 2021-05-21 10:29:10 · 365 阅读 · 1 评论 -
3.栈和队列(基础数据结构)
一.栈二.队列原创 2021-05-21 00:50:03 · 125 阅读 · 0 评论 -
5.排序方法(基础数据结构)
直接插入排序和希尔排序不难,难点在排序的方法比较多,8种先讲直接(选择)插入排序有两种方式:升序和降序 我使用升序第一种排序:直接(简单)插入排序:每次向已经排序好的队列里面找个合适的位置,将值插入具体代码实现:#include <stdio.h> #include <assert.h> //笔试和面试: //1.算法的描述 2.算法的实现 3.效率(时间复杂度和空间复杂度和稳定性) //稳定性定义:如果两个关键值A和A`,如果一开始A就在A`前面,你排序后A原创 2021-05-21 00:26:48 · 153 阅读 · 0 评论 -
2.双向链表和循环链表(基础数据结构)
一.双向链表1.单链表和顺序表的优缺点顺序表:优点:可以通过下标来直接访问数据,时间复杂度O(1) 简单,好想好理解 尾插和尾删不需要移动数据,时间复杂度是O(1)缺点:插入和删除要移动数据,时间复杂度是O(n)单链表:优点:链式结构,插入删除不需要移动数据,只需要改变一下它指针的指向,时间复杂度为O(1)缺点:不可以通过下标来直接访问,时间复杂度为O(n)二.循环链表...原创 2021-05-12 19:11:53 · 222 阅读 · 0 评论 -
1.顺序表、单链表(基础数据结构)
1、vs 基础使用使用“解决方法” 来管理所有的工程。2、算法的评价2.1、时间复杂度时间复杂度是算法的与问题规模大小的一个函数。从算法中抽取一个基本操作,以基本操作执行的次数来衡量算法的效率1、O(1)没有循环,或者循环的次数与问题的规模没有关系 – 循环是的次数是一个常数2、O(n)算法肯定是有循环或者递归, 而且这种循环或递归执行的次数与问题规模相等(控制循环或者递归的变量是以+1,或者 -1的方式趋于退出条件发生的)。3、 O(n^2)两个O(n)相乘。 循环嵌套4、O(l原创 2021-04-23 21:10:02 · 187 阅读 · 0 评论
分享