微信扫一扫打赏支持

随笔分类 -  3_算法和数据结构

上一页 1 2 3 4 5 6 7 8 ··· 17 下一页
摘要:php数据结构课程 5、树(树的 存储方式 有哪些) 一、总结 一句话总结: 1、树的度 是什么意思? 2、树的 存储方式 中的 双亲表示法 的 代码如何实现,及这种存储方式的 优缺点? 3、树的 存储方式 中的 孩子表示法 的 代码如何实现,及这种存储方式的 优缺点? 节点:index 存储链表/ 阅读全文
posted @ 2019-05-25 16:00 范仁义 阅读(822) 评论(0) 推荐(0)
摘要:php数据结构课程 4、栈(是什么) 一、总结 一句话总结: 1、栈的链表实现? 2、数组模拟栈? 3、括号匹配应用(比如[[()]()])? 4、八皇后的栈实现(不在同一条横线,竖线,左斜线,右斜线上)? 5、用php敲算法问题的好处是什么? 二、内容在总结中 阅读全文
posted @ 2019-05-17 18:16 范仁义 阅读(544) 评论(0) 推荐(0)
摘要:php数据结构课程 3、队列(队列实现方法) 一、总结 一句话总结: 1、队列的数组实现注意点? shift 英 [ʃɪft] 美 [ʃɪft] v. 转移;快速移动;变换;改变观点;推卸(责任);振作;移位;狼吞虎咽地吃;去除(污迹);销售,出售;换挡;轮班;含糊其辞,拐弯抹角 n. 转移;改变, 阅读全文
posted @ 2019-05-17 04:28 范仁义 阅读(495) 评论(0) 推荐(0)
摘要:php数据结构课程 2、链表(php中 是如何实现单链表的(也就是php中如何实现对象引用的)) 一、总结 一句话总结: 1、链表是什么? 链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点的引用。 2 阅读全文
posted @ 2019-05-16 05:16 范仁义 阅读(782) 评论(1) 推荐(0)
摘要:php数据结构课程 1、数据结构基础介绍(程序是什么) 一、总结 一句话总结: 设计好数据结构,程序就等于成功了一半。 数据结构是程序设计的基石。 1、数据的逻辑结构和物理结构是什么? 2、数据的物理存储方式有哪些,并且各自的优缺点是什么? 3、多层循环如何转递归? |||-begin |||-en 阅读全文
posted @ 2019-05-14 05:07 范仁义 阅读(801) 评论(0) 推荐(0)
摘要:算法总结 最常用的五大算法(算法题思路) 一、总结 一句话总结: 1、贪心算法是什么? 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的 阅读全文
posted @ 2019-05-09 22:45 范仁义 阅读(6500) 评论(0) 推荐(0)
摘要:算法讲课 3、动态规划 一、总结 一句话总结:动态规划也是把原问题分解为若干子问题,然后自底向上,先求解最小的子问题,把结果存储在表格中,再求解大的子问题时,直接从表格中查询小的子问题的解,避免重复计算,从而调高算法效率。 1、动态规划的算法思想? 动态规划也是把原问题分解为若干子问题,然后自底向上 阅读全文
posted @ 2018-11-03 19:59 范仁义 阅读(905) 评论(0) 推荐(1)
摘要:揭开A*算法的神秘面纱 一、总结 一句话总结:f(n)=g(n)+h(n) 这个算法有点像BFS的优化算法。 g(n)为起点到当前方格的距离,这个是已知的。 h(n)为当前方格到终点的距离,这个简单点可以直接用曼哈顿距离算。 这个算法就是在bfs的基础上每次取f(n)最小的那个点。 找不到的话就回溯 阅读全文
posted @ 2018-11-02 08:21 范仁义 阅读(573) 评论(0) 推荐(0)
摘要:算法讲课 2、分治 一、总结 一句话总结:分治在生活中使用的太普遍了,如果在解决生活问题的时候能够想到分治,那绝对会是事半功倍的 1、经典算法-分治的生活中的应用(生活中无处不在的分治)? a、军队管理(国家管理,企业管理):把部队分为各级组织,将帅就只需要管理少数几个人实现管理全军 b、歌唱选秀( 阅读全文
posted @ 2018-10-26 22:41 范仁义 阅读(634) 评论(0) 推荐(0)
摘要:线段覆盖长度 一、总结 一句话总结:a、贪心的话级排序;b、线段树 1、如果线段的起点Ai和终点Bi的绝对值可能达到109,如果用贪心怎么做? 不要用桶去计算区间覆盖的长度,正确的做法是排序后比较区间就好 二、线段覆盖长度 给定一些线段,线段有起点和终点,求这些线段的覆盖长度,重复的部分只计算一次。 阅读全文
posted @ 2018-10-13 20:17 范仁义 阅读(1157) 评论(0) 推荐(0)
摘要:算法讲课 1、贪心 一、总结 一句话总结:贪心算法在解决问题的策略上“目光短浅” 一个贪心算法总是做出当前最好的选择,也就是说,它期望通过局部最优选择从而得到全局最优的解决方案。 1、贪心导入问题 有n堆苹果,每堆苹果苹果的个数不限(大于一个),要从这n堆苹果中每堆选取一个,使得所选的苹果的总重量最 阅读全文
posted @ 2018-10-09 21:28 范仁义 阅读(786) 评论(0) 推荐(0)
摘要:算法答疑 递归实现表达式求值 一、总结 一句话总结:表达式求值除了日常的栈做法,也可以用递归。 1、递归的核心是什么? 递推公式和边界条件 递推公式就是递归的逻辑,有时候不一定方便写出来 2、c++中int factor();形式的代码是做什么用的? 函数声明,c++中的函数声明是有带函数返回值的, 阅读全文
posted @ 2018-10-01 21:22 范仁义 阅读(1605) 评论(0) 推荐(0)
摘要:算法答疑 06:月度开销 一、总结 一句话总结:n个数分成m组,求组的每个数的和最大的那个组的和的最小值。 算法:二分加贪心 从0 >组的每个数的和最大值 遍历。判断组是否满足,组数小说明值取大了,组数大了说明值取小了。 1、题目中的二分的左右端点是什么? 二、月度开销题目描述 农夫约翰是一个精明的 阅读全文
posted @ 2018-09-02 21:38 范仁义 阅读(645) 评论(0) 推荐(0)
摘要:算法答疑 10:河中跳房子 一、总结 一句话总结:一串数,去掉其中几个,使得剩余数之间的最短距离最长。 a、二分法,遍历判断每一个值(从起点到终点) b、遍历每个值的过程中,判断每次剩余的数目是不是符合题目要求 c、找到解之后要继续找,因为要找最优解 1、为什么直接输出mid会错(两个代码唯一的区别 阅读全文
posted @ 2018-09-02 21:13 范仁义 阅读(1907) 评论(0) 推荐(1)
摘要:算法答疑 08:病人排队 一、总结 一句话总结:超过60岁的年龄排序,没有超过60岁的按先后次序排序:合在一起排序的时候漏写了情况 1、超过60岁的年龄排序,没有超过60岁的按先后次序排序如何实现? 思路一:多种情况分开讨论:a、先所有人年龄排序取出超过60的;b、然后所有人先后次序排序取出没超过6 阅读全文
posted @ 2018-08-25 15:58 范仁义 阅读(1376) 评论(0) 推荐(0)
摘要:noi25 最长最短单词(为什么会出现运行时错误) 一、总结 一句话总结:比如除以零,数组越界,指针越界,使用已经释放的空间,数组开得太大,超出了栈的范围,造成栈溢出 1、c++报runtime error是什么意思? 2、为什么会出现运行时错误? 3、算法题如何查错(比如这里的运行错误)? 把代码 阅读全文
posted @ 2018-07-19 15:34 范仁义 阅读(951) 评论(0) 推荐(0)
摘要:dp有哪些种类 一、总结 一句话总结: 二、dp动态规划分类详解 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间效率高,代码量少,多元性强,主要考察思维能力、建模抽象能力、灵活度。 *************************************************** 阅读全文
posted @ 2018-07-09 19:09 范仁义 阅读(10093) 评论(2) 推荐(17)
摘要:二叉查找树 阅读全文
posted @ 2018-01-20 04:26 范仁义 阅读(359) 评论(0) 推荐(0)
摘要:图的储存(数组模拟临街表) 储存:树的储存可以用图来存储,图的数组模拟邻接矩阵:小兵应该先武装好自己,然后再加入队伍,队长负责周转(管最前面一个)。 遍历:遍历的话也好遍历,管好头尾,头就是队长,尾就是-1。 阅读全文
posted @ 2018-01-20 00:45 范仁义 阅读(613) 评论(0) 推荐(0)
摘要:AVL树、splay树(伸展树)和红黑树比较 一、AVL树: 优点:查找、插入和删除,最坏复杂度均为O(logN)。实现操作简单 如过是随机插入或者删除,其理论上可以得到O(logN)的复杂度,但是实际情况大多不是随机的。如果是随机的,则AVL 树能够达到比RB树更优的结果,因为AVL树的高度更低。 阅读全文
posted @ 2018-01-09 20:32 范仁义 阅读(5003) 评论(1) 推荐(0)

上一页 1 2 3 4 5 6 7 8 ··· 17 下一页