上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 深度优先搜索 Depth First Search DFS 深度优先是比较基础的一种方法,还有一种是它的兄弟广度优先 深度优先顾名思义:先深入搜索到一种情况的"底部"(原谅我用了这么抽象的词),然后再返回搜索其它情况 例题 我们依旧举例说明,比如我们现在想要在A,B,C三个箱子中放入1,2,3三张牌 阅读全文
posted @ 2021-11-18 20:39 RetenQ 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 枚举 枚举,暴力的一种算法,典型利用"计算机算力大大高于人力"这件事的做法 枚举,顾名思义:有序的尝试每一种可能 在书里,枚举被单独列为一章,不过每一节都是各种花式实战 因此只用了一个MD笔记来记录它 鬼畜奥数题 我们现在有一道奥数题,要求使用1-9九个数字填入下方的等式: [][][]+[][][ 阅读全文
posted @ 2021-11-18 20:37 RetenQ 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 链表(数组模拟) 链表也可以使用数组来实现,操作和基础知识比指针简单 但是个人觉得就思路和操作的清晰,以及对链表的理解而言,还是用指针好 模拟链表介绍 我们可以利用两个数组,分别记录链表要的两个东西:数据和地址 我们使用一个数组data,来存储每个结点的数据 使用另外一个数组right,来存储序列中 阅读全文
posted @ 2021-11-18 20:33 RetenQ 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 链表(指针) 在存储一大波数的时候,如果使用数组,有时会感到数组显得不太灵活 我们可以在C语言中使用指针和动态分配函数malloc来实现链表 关于指针,这里就不赘述了,默认已经了解相关知识 指针实现 malloc malloc 函数的作用就是从内存中申请分配指定字节大小的内存空间 malloc(4) 阅读全文
posted @ 2021-11-18 20:31 RetenQ 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 栈 栈是一种后进先出的数据结构,它就是栈 栈限定了它只能在一端进行插入和删除的操作,这决定了它“后进先出”的性质 栈的实现也比较简单:利用一个一维数组和一个指向栈顶部的变量(称它为top)即可,我们前面所讲的“插入”和“删除”的操作,就是通过这个"top"来实现的 入栈 入栈的操作很简易 top++ 阅读全文
posted @ 2021-11-18 20:24 RetenQ 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 队列 队列是一种特殊的线性结构,它只允许在队列的首部head进行删除,以及在尾部tail进行插入 这两种操作分别被称为“出队”和“入队”。而当队列中没有元素即head=tail时,称其为“空队列” 我们现在可以将队列的三个基本元素(一个数组,两个变量)封装为一个结构体类型 struct queue{ 阅读全文
posted @ 2021-11-18 09:52 RetenQ 阅读(37) 评论(0) 推荐(0) 编辑
摘要: #快速排序 快速排序的核心是基准数,基准数理论上是可以随机的一个数,这里我们每次都选择第一个/最左边的数作为基准数 我们可以认为,快速排序的过程,就是不断选择基准数排序的过程。我们大致可以这么描述它的步骤: 【比如我们排序 6 1 2 7 9 3 4 5 10 8 】 1.选择一个数作为基准数,我们 阅读全文
posted @ 2021-11-18 09:46 RetenQ 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序 核心思想在于“每次比较两个相邻的元素,如果它们顺序错误就把它们交换过来”,那什么是所谓顺序错误呢? 比如,我们想要进行从大到小的排序,则把小的数字往后靠 比如有五个数字12 35 99 18 76 ,我们试图将它们从大到小排序 1.我们首先比较第一12和第二35,显然35大。依据核心思想, 阅读全文
posted @ 2021-11-18 09:45 RetenQ 阅读(30) 评论(0) 推荐(0) 编辑
摘要: #桶排序(简版) 这是一种对于n个数据排序的方式 这个算法是假设了有n个桶,编号便是0-*(n-1),共n个桶来装数据 每当出现了一个数,我们就在对应编号的桶中放置一个标志 查看数据时只要看每个桶中有多少数据即可 //比如我们对0-10的数进行排序 int a[11] ; int i,j,t ; f 阅读全文
posted @ 2021-11-18 09:00 RetenQ 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 双指针 利用双指针的搜索,实质上双指针那部分很简单 记录本题主要是为了记录思想 题目 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 阅读全文
posted @ 2021-10-31 22:13 RetenQ 阅读(15) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页