数据结构
文章平均质量分 95
GolvenDong
这个作者很懒,什么都没留下…
展开
-
武汉理工大学计算机考研历年复试真题实现
2019年算法真题No.1 凑硬币【题目】:现在有硬币1分,5分,10分,25分。我现在想凑齐63分的硬币,请问如何用最少的硬币凑成63分呢。比如这道题答案应是25,25,10,1,1,1思想:采用贪心法,每次选取超过当前money的最大的硬币值,然后计算每次需要的不同硬币的个数public static void main(String[] args) { int[] coin = {1,5,10,25}; int money=63; chooseCoin(coin,原创 2021-04-02 13:42:39 · 2180 阅读 · 0 评论 -
武汉理工大学计算机考研复试-算法与程序设计(绿皮书算法java实现)
算法与程序设计复试经典算法设计与分析递归函数在运行是调用自身,并且一定要包含条件语句,在合适的时候终止递归//2013年算一个M的N次方,要求用递归;public class recursion { public static void main(String[] args){ System.out.println(f(5,3)); } public static Integer f(int M,int N){ if(N==1){原创 2021-03-05 20:59:36 · 785 阅读 · 0 评论 -
图的深度优先遍历和广度优先遍历介绍和实现(Java)
图的深度优先遍历(DFS)基本介绍:图的深度优先搜索(Depth First Search) :1)、深度优先遍历,从初始访问结点出发,初始访问结点可能有多个邻接结点,深度优先遍历的策略就是首先访问第一个邻接结点,然后再以这个被访问的邻接结点作为初始结点,访问它的第一个邻接结点, 可以这样理解:每次都在访问完当前结点后首先访问当前结点的第一个邻接结点。2)、我们可以看到,这样的访问策略是优先...原创 2019-10-29 21:09:49 · 638 阅读 · 0 评论 -
平衡二叉树的基本原理和实现方法(Java)
平衡二叉树(AVL树)的来源:看一个案例(说明二叉排序树可能的问题)给你一个数列{1,2,3,4,5,6},要求创建一颗二叉排序树(BST), 并分析问题所在.BST 存在的问题分析:1)、左子树全部为空,从形式上看,更像一个单链表.2)、插入速度没有影响3)、查询速度明显降低(因为需要依次比较), 不能发挥BST的优势,因为每次还需要比较左子树,其查询速度比单链表还慢解决方案-...原创 2019-10-28 19:48:19 · 686 阅读 · 2 评论 -
多路查找树的介绍
二叉树的问题分析:二叉树的操作效率较高,但是也存在问题, 请看下面的二叉树二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如1亿), 就存在如下问题:问题1:在构建二叉树时,需要多次进行i/o操作(海量数据存在数据库或文件中),节点海量,构建二叉树时,速度有影响问题2:节点海量,也会造成二叉树的高度很大,会降低操作速度.多叉树:在二叉树中,每个节...原创 2019-10-28 21:07:03 · 155 阅读 · 0 评论 -
图的基本介绍和创建方法(Java)
图的基本介绍:为什么要有图:前面我们学了线性表和树线性表局限于一个直接前驱和一个直接后继的关系树也只能有一个直接前驱也就是父节点当我们需要表示多对多的关系时, 这里我们就用到了图图的举例说明:图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V(vertex)是图G中顶点的集合,E(edge)是图G中边的集合。图的常用...原创 2019-10-29 19:29:17 · 2591 阅读 · 0 评论