随笔分类 - 每日一算
每天写一个算法
摘要:本博客的代码的思想和图片参考:好大学慕课浙江大学陈越老师、何钦铭老师的《数据结构》 集合的操作 1 引子 集合运算: 交、并、补、差, 判定一个元素是否属于某一集合p 并查集:集合并、 查某元素属于什么集合p 并查集问题中集合存储如何实现?Ø 可以用树结构表示集合,树的每个结点代表一个集合元素 例如
阅读全文
摘要:本博客的代码的思想和图片参考:好大学慕课浙江大学陈越老师、何钦铭老师的《数据结构》 哈夫曼编码问题 1 引子 1.1 将百分制的考试成绩转换成五分制的成绩,程序如下: if( score < 60 ) grade =1;else if( score < 70 ) grade =2;else if(
阅读全文
摘要:本博客的代码的思想和图片参考:好大学慕课浙江大学陈越老师、何钦铭老师的《数据结构》 堆(Heap) 1:引子 1.1 需求 在一个操作系统中,CPU如何处理进程。如果按照时间先后排序,那么 对优先权较高的线程来说,就会出现问题。我们必须建立一种组织方式 假设我们每次从"队列"里面取出的元素,是按照优
阅读全文
摘要:本博客的代码的思想和图片参考:好大学慕课浙江大学陈越老师、何钦铭老师的《数据结构》 陈越姥姥,我向您说明的是,在您这个算法中,只能实现一个链表的从第一个元素到K个元素的反转,但是不能实现每K个元素的反转 这是根据您的视频我画的演示的图,当K=3时: 我的意思是:那个测验题要求我们每K个元素进行反转,
阅读全文
摘要:代码的思想和图片参考:好大学慕课浙江大学陈越、何钦铭的《数据结构》 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 5 6 /* 7 需求:比较是否为相同的二叉搜索树 8 我们知道的是:给定一个插入序列可以唯一的确定一棵二叉搜索树 9 但是对于相同的一个二叉
阅读全文
摘要:代码的思想和图片参考:好大学慕课浙江大学陈越、何钦铭的《数据结构》 我们首先介绍一下什么是二叉搜索树和二叉平衡树: 二叉搜索树:一棵二叉树,可以为空;如果不为空,满足以下性质1. 非空左子树的所有键值小于其根结点的键值。2. 非空右子树的所有键值大于其根结点的键值。3. 左、右子树都是二叉搜索树。二
阅读全文
摘要:代码中的二叉树的构造参考了 http://www.cnblogs.com/dolphin0520/archive/2011/08/25/2153720.html 代码的思想和图片的来源:好大学慕课浙江大学陈越、何钦铭的《数据结构》 话不多说,直接上代码 1 #include<stdio.h> 2 #
阅读全文
摘要:笔记和代码的思路来源: 好大学慕课浙江大学陈越、何钦铭的《数据结构》 讨论3.1 黄金分割查找? 老师参与 笔记和代码的思路来源: 好大学慕课浙江大学陈越、何钦铭的《数据结构》 讨论3.1 黄金分割查找? 老师参与 老师参与 在二分查找中,我们是取mid等于left和right的中间值,即用等分的方
阅读全文
摘要:数据结构:堆栈 算法思想:堆栈弹栈,压栈,回溯法 1 //迷宫问题 2 #include<stdio.h> 3 #include<stdlib.h> 4 #define m 9 5 #define n 9 6 #define MAXSIZE 100 7 //迷宫问题 8 9 //定义移动位置 ,其中
阅读全文
摘要:自己测试可以,但是PTA只能运行只能得4分,哪位大神帮我看看错哪了。 笔记和代码的思路来源: 好大学慕课浙江大学陈越、何钦铭的《数据结构》 1 package ygh.study.demo1; 2 3 import java.util.ArrayList; 4 import java.util.Li
阅读全文
摘要:不知道为啥,自己编程运行可以,一到PTA上运行就报错。不过算应该是没错的 1 #include<stdio.h> 2 #include<stdlib.h> 3 /*使用链表实习多项式的加法运算*/ 4 typedef struct linkList{ 5 int xiShu; 6 int ciShu
阅读全文
摘要:笔记和代码的思路来源: 好大学慕课浙江大学陈越、何钦铭的《数据结构》 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 typedef int ElementType; 5 typedef struct Node *PtrToNode; 6 struct
阅读全文
摘要:笔记和代码的思路来源: 好大学慕课浙江大学陈越、何钦铭的《数据结构》 队列: 1.介绍 一种数据结构,遵循先进先出的原则,插入只能在一端进行,删除必须在另一端 数据插入:入队列 数据删除:出队列 2.数据抽象 队列的抽象数据类型: 类型名称:队列(Queue) 数据对象集:一个有0个或者多个元素的又
阅读全文
摘要:算法题目来自好大学慕课浙江大学《数据结构》队列的讨论题,题目如下: 如何用两个堆栈模拟实现一个队列? 如果这两个堆栈的容量分别是m和n(m>n),你的方法能保证的队列容量是多少 算法思想来自慕课好大学浙江大学《算法与数据结构》 代码如下: 1 #include<stdio.h> 2 #include
阅读全文
摘要:所用知识:C语言,堆栈操作 算法思想来自慕课浙江大学《数据结构》陈老师,何老师 笔记: 1.堆栈: 1.1 引子 一种数据结构,在函数调用,表达式求值等都有广泛的应用 中缀表达式:a+b*c-d/e:生活中经常使用,但是计算机不好识别 后缀表达式:abc*+dc/-:生活中不好使用,但计算机容易识别
阅读全文
摘要:这些代码出自慕课浙江大学的《数据结构》 线性表数组实现: 1 #include<stdio.h> 2 #define MAXSIZE 100 3 #include<stdlib.h> 4 #include<malloc.h> 5 6 //define linkear list 7 typedef s
阅读全文
摘要:1.堆栈: 1.1 引子 一种数据结构,在函数调用,表达式求值等都有广泛的应用 中缀表达式:a+b*c-d/e:生活中经常使用,但是计算机不好识别 后缀表达式:abc*+dc/-:生活中不好使用,但计算机容易识别 例:求后缀表达式的值 6 2 / 3 - 4 2 * + = 后缀表达式的求解原理:遇
阅读全文
摘要:比较结果 下面值四中算法的的执行时间: 当n的长度为100ygh.study.algorithm.Demo2.MaxSubSequence1 execute time: 4ygh.study.algorithm.Demo2.MaxSubSequence2 execute time: 0ygh.stu
阅读全文
摘要:#include<stdio.h>#include<math.h>#include<time.h>#define MAXK 1e6/*you can get the question fromE:\project\java_algorithm\C_Algorithem\algorithm01\wee
阅读全文

浙公网安备 33010602011771号