11 2018 档案
摘要:单调递增最长子序列 题目描述: 求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4 题目描述: 求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4 题目描述: 求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是
阅读全文
摘要:动态申请二维数组: int row; //行 int col; //列 cin >> row >> col; //动态申请二维数组 int** p = new int* [row]; for (int i = 0; i < row; i++) { p[i] = new int[col]; } //释
阅读全文
摘要:题目描述 大于1 的正整数n可以分解为:n=x1*x2*…*xm。例如,当n=12 时,共有8 种不同的分解式:12=12;12=6*2;12=4*3;12=3*4;12=3*2*2;12=2*6;12=2*3*2;12=2*2*3。 对于给定的正整数n,编程计算n共有多少种不同的分解式。 题目描述
阅读全文
摘要:半数集问题描述: 给定一个自然数n,由n 开始可以依次产生半数集set(n)中的数如下。 (1) n∈set(n); (2) 在n 的左边加上一个自然数,但该自然数不能超过最近添加的数的一半; (3) 按此规则进行处理,直到不能再添加自然数为止。 例如,set(6)={6,16,26,126,36,
阅读全文
摘要:问题描述某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位
阅读全文
摘要:选择问题(Selection Problem),即在n个元素的集合中寻找第K小的元素的问题。第K小的元素又叫第K个顺序统计量。有以下几种变体: - 找最大值和最小值;同时找最大和最小值 - 找中位数(第n/2小) - 找任意第K小的元素 - 找Top-K的元素
阅读全文
摘要:问题 在一个2^k×2^k (k≥0)个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为特殊方格。显然,特殊方格在棋盘中可能出现的位置有4^k种,因而有4^k种不同的棋盘,图4.10(a)所示是k=2时16种棋盘中的一个。棋盘覆盖问题(chess cover problem)要求用图4.10
阅读全文
摘要:问题:设有n=2^k个选手参加循环赛,要求设计一个满足以下要求比赛日程表: 1)每个选手必须与其它n-1个选手各赛一次; 2)每个选手一天只能赛一次。
阅读全文
摘要:将正整数 n 表示成一系列正整数之和, n=n1+n2+…+nk, 其中 n1>=n2>=…>=nk>=1 , k>=1 。 正整数 n 的这种表示称为正整数 n 的划分。正整数 n 的不同的划分个数称为正整数 n 的划分数,记作 p(n) 。 例如正整数 6 有如下 11 种不同的划分,所以 p(
阅读全文
摘要:设R={r1,r2,r3,.....rn}要进行全排列的n个元素,集合X中元素的全排列记为perm(X),则(ri)perm(X)表示在全排列perm(X)的每一个排列前加上前缀ri得到的排列。R的全排列定义可归纳定义如下: 当n=1时,perm(R) = (r),其中r为集合R中唯一元素 当n>1
阅读全文
摘要:队列即可以用链表实现也可以用顺序表实现,跟栈相反的是,栈一般用顺序表实现而队列用链表来实现,简称为链队列,我们将队头指针指向链队列的头结点,队尾指针指向终端结点(头结点不是必要的,但为了方便操作我们加上了头结点)。 一、队列的链式存储 1、链队列的存储结构 2、初始化一个队列 创建一个队列要完成两个
阅读全文
摘要:思路:从左到右遍历中缀表达式的每个数字和符号,如果是数字直接输出,如果是符号判断其与栈顶符号的优先级,是右括号或者优先级低于栈顶符号,则栈顶元素依次出栈并输出
阅读全文
摘要:1、实现对逆波兰输入的表达式进行计算 2、支持带小数点的数据
阅读全文
摘要:栈:是限定仅在表尾进行插入或删除操作的线性表,表尾段称为栈顶,表头段称为栈底,栈有称后进先出线性表。栈有顺序栈和链栈。 一、栈的顺序存储 1、顺序栈的结构定义 2、创建一个空栈 3、元素入栈 4、元素出栈 5、清空一个栈(将栈顶指针指向栈底指针) 6、销毁一个栈 7、返回栈的当前容量 栈的应用(进制
阅读全文
摘要:给出两个包含 nn 个整数的数组 AA,BB。分别在 AA, BB 中任意出一个数并且相加,可以得到 n^2n2个和。求这些和中最小的 nn 个。 输入格式输入第一行一个整数 n(1 \le n \le 50000)n(1≤n≤50000)。 接下来一行输入数组 AA,用空格隔开。 接下来一行输入数
阅读全文
摘要:问题数学老师小y 想写一个成绩查询系统,包含如下指令: insert [name] [score],向系统中插入一条信息,表示名字为name的学生的数学成绩为score。 find [name],表示查找名字为name的学生的数学成绩。 注意有些同学可能会为了刷分多次选课,查询的时候给出最大成绩即可
阅读全文
摘要:之前讨论的链式存储结构的结点中只有一个指示直接后继的指针域,由此,从某个结点出发只能顺着指针往后找其他的结点,若要查找结点的直接前驱,只能从表头出发,因此为了克服单链表的这种缺点,引入了双向链表。双向链表结点中有两个指针域,其一指向直接后继,另一指向直接前驱。 1、双向链表的存储结构 双向链表的循环
阅读全文
摘要:例如:5 5 5 5 5 = 5,填入适当的运算符使等式相等,(1、当填入除号时,右侧的数不能为0;2、乘除的运算级别比加减高)
阅读全文
摘要:问题描写叙述: 魔术师手中有A、2、3……J、Q、K十三张黑桃扑克牌。在表演魔术前,魔术师已经将他们依照一定的顺序叠放好(有花色的一面朝下)。魔术表演过程为:一開始,魔术师数1,然后把最上面的那张牌翻过来,是黑桃A;然后将其放到桌面上;第二次,魔术师数1、2;将第一张牌放到这些牌的最以下,将第二张牌
阅读全文
摘要:有环的定义:链表的尾结点指向了链表中的某个结点,如下图所示 判断是否有环,两种方法: 方法1:使用p、q两个指针,p总是向前走,但q每次都从头开始走,对于每个节点看p走的步数和q是否一样,如上图所示:当p从6走到3时,共走了6步,此时若q从出发,则q只需要走两步就到达3的位置,因而步数不相等,出现矛
阅读全文
摘要:假设头指针为La、Lb单链表分别为线性表LA、LB的存储结构,现在要合并La、Lb得到单链表Lc 链表合并实例: 运行结果:
阅读全文
摘要:递归算法是一个过程或函数在其定义或说明中又直接或间接调用自身的一种方法,它通常把一个大型而复杂的问题晨晨转化成与原问题相似的,规模较小的问题来解决,一般来说,递归需要边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进,当递归条件满足时,递归返回。在使用递归时必须要有明确的结束条件,称为递
阅读全文
摘要:问题描述: 约瑟夫是犹太军队的一个将军,在反抗罗马的起义中,他所率领的军队被击溃,只剩下残余的部队40余人,他们都是宁死不屈的人,所以不愿投降做叛徒。一群人表决说要死,所以用一种策略来先后杀死所有人。 于是约瑟夫建议:每次由其他两人一起杀死一个人,而被杀的人的先后顺序是由抽签决定的,约瑟夫有预谋地抽
阅读全文
摘要:问题:首先出示一件价格在999元以内商品,参与者要猜出这件商品的价格,在猜价格的过程中,主持人会根据参与者猜的价格进行相应的提示,“高了”或“底了” 代码实现:
阅读全文
摘要:问题描述:快速找到未知长度的单链表的中间结点 普通方法:首先遍历一遍单链表,以确定单链表的长度L,然后再从头结点出发,循环L/2次,找到单链表的中间结点。 高效算法(快慢指针):设置两个指针,*search,*mid都指向单链表的头结点。其中*search指针的移动速度是*mid指针移动速度的2倍。
阅读全文
摘要:1、概念:用数组描述的链表称为静态链表,这种描述方法叫做游标实现法。 2、静态链表—插入元素 3、静态链表—删除元素 4、返回L中数据元素的个数 总结:静态链表的优缺点 优点:在插入和删除操作中,只需要修改游标,不需要移动元素,从而改进了在顺序存储结构中插入和删除操作需要移动大量元素的缺点。 缺点:
阅读全文
摘要:1、头插法创建单链表(生成的链表中结点的顺序与输入的顺序相反) 2、尾插法创建单链表(与输入的顺序相同) 3、综合实现
阅读全文
摘要:线性表的顺序存储结构的特点是逻辑关系上相邻的两个元素在物理位置上也相邻,因此可以随机存取表中任意元素。线性表链式存储结构特点是用一组任意的存储单元存储数据元素,为了表示每个数据元素ai与其直接后继数据元素ai+1之间的逻辑关系,对数据元素ai来说,除了存储本身信息外,还要存储指示其直接后继的信息(即
阅读全文

浙公网安备 33010602011771号