算法与数据结构
liff_lee
一个拼死拼活想学计算机编程掉了很多头发的文艺菜鸟
展开
-
快排算法
...原创 2020-02-18 11:43:43 · 217 阅读 · 0 评论 -
哈夫曼编码哈夫曼树
哈夫曼编码和哈夫曼树转载 2018-01-28 16:46:58 · 188 阅读 · 0 评论 -
C++排序算法
C++排序算法总结看了总结图,我这里就总结一下 直接插入排序,冒泡排序,快速排序,堆排序和归并排序,使用C++实现重新画了总结图直接插入排序整个序列分为有序区和无序区,取第一个元素作为初始有序区,然后第二个开始,依次插入到有序区的合适位置,直到排好序刚开始在我那本《数据结构》看到大概这样的实现void InsertSort(int arr[], int len) { int i, j; ...转载 2018-03-10 16:39:46 · 114 阅读 · 0 评论 -
【百度笔试】买帽子
[编程题] 买帽子时间限制:1秒空间限制:32768K度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少? 输入描述:首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000)输出描述:如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1输入例子1:10...原创 2018-03-10 18:32:33 · 308 阅读 · 0 评论 -
【百度笔试】度度熊回家
链接:https://www.nowcoder.com/questionTerminal/b96a7519b60748d7a77f13570776c3ac来源:牛客网[编程题]度度熊回家热度指数:19103时间限制:1秒空间限制:32768K算法知识视频讲解一个数轴上共有N个点,第一个点的坐标是度度熊现在位置,第N-1个点是度度熊的家。现在他需要依次的从0号坐标走到N-1号坐标。 但是除了0号坐...原创 2018-03-11 10:29:24 · 286 阅读 · 0 评论 -
【北邮复试机试】二叉排序树
时间限制:1秒 空间限制:32768K 热度指数:8619 算法知识视频讲解题目描述输入一系列整数,建立二叉排序数,并进行前序,中序,后序遍历。输入描述:输入第一行包括一个整数n(1<=n<=100)。接下来的一行包括n个整数。输出描述:可能有多组测试数据,对于每组数据,将题目所给数据建立一个二叉排序树,并对二叉排序树进行前序、中序和后序遍历。每种遍历结果输出一行。每行最后一个数据...原创 2018-03-25 11:08:57 · 428 阅读 · 0 评论 -
tarjan算法详解
https://blog.csdn.net/jeryjeryjery/article/details/52829142?locationNum=4&fps=1转载 2018-04-03 11:48:15 · 435 阅读 · 0 评论 -
Prim算法代码核心
算法描述1).输入:一个加权连通图,其中顶点集合为V,边集合为E;2).初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {},为空;3).重复下列操作,直到Vnew = V:a.在集合E中选取权值最小的边<u, v>,其中u为集合Vnew中的元素,而v不在Vnew集合当中,并且v∈V(如果存在有多条满足前述条件即具有相同权值的边,则可任...转载 2018-08-15 12:11:00 · 1395 阅读 · 0 评论 -
【经典排序算法】---基于比较的排序算法
排序算法可以分为两类:非线性时间比较排序:通过比较来决定元素之间的相对次序,由于其时间复杂度不能突破O(nlogn)。线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下届,以线性时间运行。排序算法分类:非线性时间比较类排序 交换排序:冒泡;快排; 插入排序:简单插入排序;shell; 选择排序:简单...原创 2018-09-26 19:06:20 · 3234 阅读 · 0 评论 -
【leetcode每日刷题】【并查集】547. Friend Circles
There areNstudents in a class. Some of them are friends, while some are not. Their friendship is transitive in nature. For example, if A is adirectfriend of B, and B is adirectfriend of C, then ...原创 2019-05-03 12:18:34 · 175 阅读 · 0 评论 -
反转字符串
转载于https://www.cnblogs.com/JohnTsai/p/5606719.html深入浅出经典面试题之——反转字符串前言如今无论大小公司,都喜欢出一些算法题来测试面试者的算法功底或者说是计算机功底。而如今Android和Java把很多方法都封装成API了,导致我们写代码往往只是调调API,没有深入了解过一些功能的底层算法实现。因此,研究算法一是能在转载 2018-02-03 23:10:39 · 1205 阅读 · 0 评论 -
求树的直径问题
求树的直径树的直径是指树的最长简单路。求法: 两遍BFS :先任选一个起点BFS找到最长路的终点,再从终点进行BFS,则第二次BFS找到的最长路即为树的直径; 原理: 设起点为u,第一次BFS找到的终点v一定是树的直径的一个端点 证明: 1) 如果u 是直径上的点,则v显然是直径的终点(因为如果v不是的话,则必定存在另一个点w转载 2017-09-10 16:01:05 · 423 阅读 · 0 评论 -
ccf认证最优配餐80分
问题描述试题编号:201409-4试题名称:最优配餐时间限制:1.0s内存限制:256.0MB问题描述:问题描述 栋栋最近开了一家餐饮连锁店,提供外卖服务。随着连锁店越来越多,怎么合理的给客户送餐成为了一个急需解决的问题。 栋栋的连锁店所在的区域可以看成是一个原创 2017-09-10 15:57:52 · 265 阅读 · 0 评论 -
石子合并问题
石子合并问题[问题描述]: 设有n堆石子排成一排,其编号为1、2、3、…、n(n◆每次只能将相邻两堆归并成一堆,即:第 1 堆石子 a[1] 只能与第 2 堆石子 a[2] 归并,最后一堆石子 a[n] 只能与 a[n-1] 归并,中间的石子 a[i] 只能与 a[i-1] 或 a[i+1] 归并;◆每次归并的代价是两堆石子的重量之和。 我们假如5堆的石子,转载 2017-08-18 14:54:53 · 504 阅读 · 0 评论 -
ccf认证压缩编码
问题描述试题编号:201612-4试题名称:压缩编码时间限制:3.0s内存限制:256.0MB问题描述:问题描述 给定一段文字,已知单词a1, a2, …, an出现的频率分别t1, t2, …, tn。可以用01串给这些单词编码,即将每个单词与一个01串对应,原创 2017-08-18 15:02:01 · 391 阅读 · 0 评论 -
有趣的数算法
算法:这里假设F[n][1]代表n位只含有2、3两种数字的有趣数数量,F[n][2代表n位只含有2、0两种数字有趣数数量,]F[n][3]代表n位只含有0、2、3有趣数数量,F[n][4]代表n位只含有0、1、2有趣数数量,F[n][5]代表n位含有0、1、2、3有趣数数量。经过分析有如下关系:F[n][1] = F[n-1][1] + 1F[n][2] = F[n原创 2017-08-19 00:15:46 · 415 阅读 · 0 评论 -
ccf认证高速公路90
问题描述试题编号:201509-4试题名称:高速公路时间限制:1.0s内存限制:256.0MB问题描述:问题描述 某国有n个城市,为了使得城市间的交通更便利,该国国王打算在城市之间修一些高速公路,由于经费限制,国王打算第一阶段先在部分城市之间修一些单向的高速公路。原创 2017-09-09 21:16:19 · 438 阅读 · 0 评论 -
并查集的应用举例
并查集应用举例转载 2017-09-16 17:20:56 · 373 阅读 · 0 评论 -
ccf认证交通规划0分
问题描述试题编号:201609-4试题名称:交通规划时间限制:1.0s内存限制:256.0MB问题描述:问题描述 G国国王来中国参观后,被中国的高速铁路深深的震撼,决定为自己的国家也建设一个高速铁路系统。 建设高速铁路投入非常大,为了节约建设成本,G国国王决定原创 2017-09-08 21:06:10 · 680 阅读 · 0 评论 -
ccf认证游戏100分
问题描述试题编号:201604-4试题名称:游戏时间限制:1.0s内存限制:256.0MB问题描述:问题描述 小明在玩一个电脑游戏,游戏在一个n×m的方格图上进行,小明控制的角色开始的时候站在第一行第一列,目标是前往第n行第m列。 方格图上有一些方格是始终安全原创 2017-09-08 21:23:06 · 258 阅读 · 0 评论 -
ccf认证画图90分
问题描述试题编号:201512-3试题名称:画图时间限制:1.0s内存限制:256.0MB问题描述:问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。原创 2017-08-19 23:03:50 · 433 阅读 · 1 评论 -
ccf认证送货20分
问题描述试题编号:201512-4试题名称:送货时间限制:1.0s内存限制:256.0MB问题描述:问题描述 为了增加公司收入,F公司新开设了物流业务。由于F公司在业界的良好口碑,物流业务一开通即受到了消费者的欢迎,物流业务马上遍及了城市的每条街道。然而,F公司现在原创 2017-09-09 17:43:11 · 395 阅读 · 0 评论 -
树的应用-并查集
并查集详解 void union_s( int xf, int yf) { p[yf]=xf; } int find(int x) { while (p[x]!=x) { x=p[x]; } return x; }主要函数。转载 2017-08-18 11:25:57 · 816 阅读 · 0 评论