10 2018 档案
链表去重
摘要:数据结构上机实验上的一道题。 设一带头结点的单链表,设计算法将表中值相同的元素仅保留一个结点。 提示:指针p从链表的第一个元素开始,利用指针q从指针p位置开始向后搜索整个链表,删除与之值相同的元素;指针p继续指向下一个元素,开始下一轮的删除,直至p==null为至,既完成了对整个链表元素的删除相同值
数据结构——顺序表与链表
摘要:1.顺序表 我在学习完顺序表后一直对顺序表、数组、结构体数组这几个概念存在一些疑问,这里给出一些分析和看法。 顺序表:在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。 数组:把具有相同数据类型的若干变量按有序的形式组织起来,以便于程序处理,这些数据元素
关于拓扑排序的进一步说明
摘要:之前在https://www.cnblogs.com/wkfvawl/p/9129325.html上已经介绍了拓扑排序,我这里再根据图论书上的内容对拓扑排序进行一下补充,和进一步的说明。 主要摘自《图论算法理论、实现及应用》 1.拓扑排序中栈的使用 拓扑排序在实现时,还需建立一个存放入度为 0 的顶
算法类——数学问题汇总
摘要:一、最大公约数和最小公倍数 最大公约数 正整数a与b的最大公约数是指a与b的所有公约数中最大的那个公约数。一般用gcd(a,b)来表示a和b的最大公约数。例如4和6的最大公约数是2,3和9的最大公约数是3。而求解最大公约数常用欧几里得算法(辗转相除法)。 定理:设a、b均为正整数,则gcd(a,b)
4个数的和为0 51nod 1267
摘要:给出N个整数,你来判断一下是否能够选出4个数,他们的和为0,可以则输出"Yes",否则输出"No"。 Input Output Input Output
Buy the Ticket HDU 1133 卡特兰数应用+Java大数
摘要:Problem Description The "Harry Potter and the Goblet of Fire" will be on show in the next few days. As a crazy fan of Harry Potter, you will go to the
Linux学习
摘要:第一章 文件系统目录结构 Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。 深刻理解Linux树状文件目录是非常重要的。 记住一句经典的话:在Linux世界里,一切皆文件。 具体的目录结构: /bin[重点] (/usr/bin、/u
判断最小生成树是否唯一
摘要:我们知道在构造最小生成树的时候有可能会选择不同的边,这样构造的最小生成树不相同,但是最小生成树的权是唯一的! 毫无疑问,无向图中存在相同权值的边是最小生成树不唯一的必要条件(但不是充分条件)。正因为如此,如果无向图中各边的权值都不相同,那么在用Kruskal算法构造最小生成树时,选择的方案是唯一的。
过山车 HDU 2063 (二分图匹配裸题)
摘要:Problem Description RPG girls今天和大家一起去游乐场玩,终于可以坐上梦寐以求的过山车了。可是,过山车的每一排只有两个座位,而且还有条不成文的规矩,就是每个女生必须找个个男生做partner和她同坐。但是,每个女孩都有各自的想法,举个例子把,Rabbit只愿意和XHD或PQ
二分图的最大匹配
摘要:摘自爱国师哥博客https://www.cnblogs.com/aiguona/p/7665946.html 代码部分摘自《图论算法》 一、概念: 二分图:简单来说,如果图中点可以被分为两组,并且使得所有边都跨越组的边界,则这就是一个二分图。准确地说:把一个图的顶点划分为两个不相交集 U 和V ,使
Arctic Network POJ 2349 (最小生成树思想)
摘要:Description The Department of National Defence (DND) wishes to connect several northern outposts by a wireless network. Two different communication te
Wormholes POJ 3259(SPFA判负环)
摘要:Description While exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is very peculiar because it is a one-
键盘符号中英文对照表
摘要:键 英文 中文 ~ tilde 波浪符 ` back quote 反引号 ! exclamation mark or bang 叹号 @ at 艾特 # hash or number or sharp 井号 $ dollar 美元符 % percent 百分号 ^ caret 脱字符、插入符 & a
A Bug's Life(加权并查集)
摘要:Description Background Professor Hopper is researching the sexual behavior of a rare species of bugs. He assumes that they feature two different gende
卡特兰数(Catalan)及其应用
摘要:卡特兰数 大佬博客https://blog.csdn.net/doc_sgl/article/details/8880468 卡特兰数是组合数学中一个常出现在各种计数问题中出现的数列。 卡特兰数前几项为 : C0=1,C1=1,C2=2,C3=5,C4=14,C5=42,C6=132,C7=429,
数据结构—堆排序
摘要:感谢大佬的博客https://www.cnblogs.com/chengxiao/p/6129630.html 预备知识 堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆 堆
关于《数据结构》课本KMP算法的理解
摘要:数据结构课上讲的KMP算法和我在ACM中学习的KMP算法是有区别的,这里我对课本上的KMP算法给出我的一些想法。 原理和之前的KMP是一样的https://www.cnblogs.com/wkfvawl/p/9768729.html,但是不同点在于之前的KPM中next数组存放的是到了该位时最大前后
POJ 3784 Running Median(动态维护中位数)
摘要:Description For this problem, you will write a program that reads in a sequence of 32-bit signed integers. After each odd-indexed value is read, outpu
C++ STL 全排列
摘要:摘自爱国师哥博客https://www.cnblogs.com/aiguona/p/7304945.html 一、概念 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。如果这组数有n个,那么全排列数为n!个
数据结构——哈夫曼(Huffman)树+哈夫曼编码
摘要:前天acm实验课,老师教了几种排序,抓的一套题上有一个哈夫曼树的题,正好之前离散数学也讲过哈夫曼树,这里我就结合课本,整理一篇关于哈夫曼树的博客。 主要摘自https://www.cnblogs.com/skywang12345/p/3706821.html感谢大佬 https://www.cnbl
算法与数据结构实验6:逆序对(归并排序)
摘要:Description 在这个问题中,你需要分析一个对n个不同数排序的算法。该算法主要通过交换相邻数直到序列有序(升序)。比如:对输入序列 9 1 0 5 4 经过一系列交换后变成有序序列 0 1 4 5 9你的任务是计算将序列变成有序最少需要经过多少次交换。 Description 在这个问题中,
数据结构——归并排序
摘要:这篇博客主要摘自https://www.cnblogs.com/chengxiao/p/6194356.html我又用C++重写了一下代码 基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(di
C++ STL 优先队列 priority_queue 详解(转)
摘要:转自https://blog.csdn.net/c20182030/article/details/70757660,感谢大佬。 优先队列 引入 优先队列是一种特殊的队列,在学习堆排序的时候就有所了解,点“击”查看。 那么优先队列是什么呢? 说白了,就是一种功能强大的队列。 它的功能强大在哪里呢?
KMP字符串匹配算法
摘要:去年冬天就接触KMP算法了,但是听的不明不白,遇到字符串匹配的题我大都直接使用string中的find解决了,但今天数据结构课又讲了一下,我觉得有必要再来回顾一下。之前看过很多关于KMP的博客,有很多虽然很好,但是要么太专业,要么很难想象,这篇博客用了大量的图示例子来说明,主要在于启发,后面给出代码
现在和未来
摘要:经历了几天的犹豫和不决,今天终于向集训队队长提出了退队,这个想法从暑假集训的时候就有了吧,实力太菜,在实验室没有存在感,让我一度绝望,再加上一些人际关系处理的不好,最终还是做出了这个决定。从2017年10月到现在整整一年,在实验室学到了很多东西,让我大一一年有了目标,不至于茫然混混度日,真心感谢带我
Karen and Coffee CF 816B(前缀和)
摘要:Description To stay woke and attentive(专注的) during classes, Karen needs some coffee! Karen, a coffee aficionado, wants to know the optimal temperature
找零钱(母函数)
摘要:Description 我们知道人民币有1、2、5、10、20、50、100这几种面值。 现在给你 n(1≤n≤250)元,让你计算换成用上面这些面额表示且总数不超过100张,共有几种。 比如4元,能用4张1元、2张1元和1张2元、2张 2元,三种表示方法。 Description 我们知道人民币有
USACO 1.5.4 Checker Challenge跳棋的挑战(回溯法求解N皇后问题+八皇后问题说明)
摘要:Description 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子。 列号 上面的布局可以用序列2 4 6 1 3 5来描述,第i个数字表示在第i行的相应位置有一个棋子,如下: 行号 1 2 3 4 5
母函数及其应用+模板
摘要:部分摘自这位大佬的博客https://www.cnblogs.com/linyujun/p/5207730.html 生成函数即母函数,是组合数学中尤其是计数方面的一个重要理论和工具。 最早提出母函数的人是法国数学家LaplaceP.S.在其1812年出版的《概率的分析理论》中明确提出“生成函数的计
CF 1008B Turn the Rectangles(水题+贪心)
摘要:There are n rectangles in a row. You can either turn each rectangle by 90 degrees or leave it as it is. If you turn a rectangle, its width will be hei