- 博客(35)
- 收藏
- 关注
原创 面向对象(JAVA)——多态和对象类型转换
多态是指同一行为作用于不同对象时,可以表现出多种不同的形式和结果来。例如,子类继承父类并覆盖其方法后,用父类引用指向子类对象并调用该方法时,实际执行的是子类的方法。这种根据对象实际类型而非声明类型来确定执行方法的行为,就是多态性的体现。多态主要通过继承和接口实现,允许同一接口有多种不同的实现方法。
2024-10-29 13:08:15 279
原创 数据结构复习之线性表(顺序表--插入、删除)
顺序表的基本操作——插入用存储位置的相邻来体现数据元素之间的逻辑关系ListInsert(&L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。
2024-07-15 21:06:30 469
原创 数据结构复习计划之复杂度分析(时间、空间)
第二节:算法时间复杂度和空间复杂度算法(Algorithm):是对特定问题求解方法(步骤)的一种描述,是指令的有限序列,其中每一条指令表示一个或多个操作。
2024-07-11 19:27:22 1050 1
原创 数据结构复习计划之绪论(7.10)
⭐数据结构→信息的表示,信息的处理→信息的表示:数据结构(线性表、队列等)→ 信息的处理:算法(排序和查找)⭐数据结构在讲什么?计算机是一门研究用计算机进行信息表示和处理的科学;涉及到两个问题:信息的表示,信息的处理。数据结构:分析待处理问题中的对象的特征及各对象之间存在的关系
2024-07-10 21:58:03 1318
原创 复习笔记二(动态规划法)
工作指派问题(20 分)设有 n 件工作,n 个人,每个人只能做一件工作,每件工作只能安排给一个人,已知每个人做每件工作的耗费,请设计分支限界算法求解最少耗费的工作指派。要求:(1) 对问题进行分析;(9 分)(2) 给出分支限界算法的伪代码描述;(8 分)(3) 分析以上算法的时间复杂度。(3 分)
2024-06-17 16:57:36 360
原创 回溯法(3着色问题)
考虑3着色问题:给出一个无向图G=(V,E),需要用三种颜色之一为V中的每个顶点着色,三种颜色分别为1,2,3,使得没有两个邻接的顶点有同样的颜色。我们把这样的着色称为合法的;否则,如果两个邻接的顶点有同一种颜色就是非法的。
2024-06-03 23:07:11 776
原创 数字组合问题(回溯法)
找出从自然数1、2、……、n中任取r个数的所有组合。问题的状态空间为: E={(x1,x2,...,xr)∣xi∈S ,i=1,2,...,r } 其中:S={1,2,3,...,n} 约束集为:x1
2024-06-02 23:11:36 770 1
原创 回溯法(复习笔记一)
搜索法是解决问题时常用的方法,最笨的办法是穷举搜索,对于有些问题穷举搜索可以有效的解决,但是对于复杂问题穷举搜索法就不能很好地解决了。因此,在穷举搜索的基础上,提出了一些启发式的搜索方法。 回溯法的本质就是搜索,但是其搜索过程采用了一些“剪枝”的策略,可以一定程度上提高搜索的效率。回溯法也称为试探法,该方法在搜索过程中会向前试探搜索,也会在当前搜索路径走不通时,向后回溯。
2024-06-01 21:58:24 1195
原创 活动选择问题(贪心法)
求解蓄栏保留问题。农场有n头牛,每头牛会有一个特定的时间区间[b,e]在蓄栏里挤牛奶,并且一个蓄栏里任何时刻只能有一头牛挤奶。现在农场主希望知道最少蓄栏能够满足上述要求,并给出每头牛被安排的方案。对于多种可行方案,输出一种即可。
2024-05-31 21:01:10 719
原创 矩阵链相乘(动态规划法)
矩阵链相乘问题是一个经典的动态规划问题。给定一系列矩阵,目标是找到一种最优的乘法顺序,使得所有矩阵相乘所需的标量乘法次数最少。矩阵链相乘问题的关键在于利用动态规划来避免重复计算子问题。
2024-05-30 22:04:29 935
原创 子集和问题(回溯法)
【问题描述】考虑定义如下的PARTITION问题中的一个变型。给定一个n个整数的集合X={x1,x2,…,xn}和整数y,找出和等于y的X的子集Y。
2024-05-29 21:30:15 1033 1
原创 任务分配问题(回溯法)
【问题描述】有n (n>=1)个任务需要分配给 n个人执行,每个任务只能分配给一个人,每个人只能执行一个任务。第i个人执行第j个任务的成本是c [i] [j](1≤i,j≤n)。求出总成本最小的分配方案。
2024-05-28 16:50:27 1452
原创 分治法(棋盘覆盖问题)
有一个 2^kx2^k (k>0)的棋盘,恰好有一个方格与其他方格不同,称之为特殊方格。现在要用L形骨牌覆盖除了特殊方格以外的其他全部方格,骨牌可以任意旋转,并且任何两个骨牌不能重复。请给出一种覆盖方式
2024-05-28 12:14:19 2700 2
原创 【数据结构】快速排序C语言
排序是一个相对复杂的过程,进一步思考排序这个问题,我们可以借助分治的思想来解决这个问题,什么叫分治呢?就是把大问题化成小问题,进而缩小问题的规模,并且大问题和小问题只有规模不同,显然,大问题的问题规模大,小问题的问题规模小。例如,我们上面的起泡排序,经过一趟排序后,得到的序列是{23,22,38,23,45,31,15,41,67},其中67已经排好,剩下的元素也是排序,只是需要排序的元素少了一个(问题规模变小)。当然,起泡排序的这种分割太低效,每次只能切除一个元素,太费时费力了。那么有没有更有效的方
2024-05-27 23:15:33 1358
原创 HTML5的标签(文本链接、图片路径详解)
在HTML 5中,可以使用相对路径或绝对路径来定义图片路径。以下是关于这两种路径的详细解释:1. 相对路径:相对路径是相对于当前HTML文件的路径。相对路径可以分为以下几种类型:- 相对于当前文件路径: 当图片文件和HTML文件在同一目录下时,可以直接写图片文件名作为路径。 例如:\- 相对于当前文件的父目录路径: 当图片文件在当前HTML文件的父目录中时,可以使用"../"来向上一级目录。 例如:\
2024-05-27 21:23:40 847
原创 批处理作业调度问题 (回溯法)
【问题】n 个作业{1, 2, …, n}要在两台机器上处理,每个作业必须先由机器 1 处理,再由机器 2 处理,机器 1 处理作业i所需时间为 ai,机器 2 处理作业 i 所需时间为 bi(1 ≤ i ≤ n),批处理作业调度问题(batch-job scheduling problem)要求确定这 n 个作业的最优处理顺序,使得从第 1 个作业在机器 1 上处理开始,到最后一个作业在机器 2 上处理结束所需时间最少。
2024-05-26 22:02:08 1089 2
原创 多段图最短路径(动态规划法)
问题描述:设图G=(V, E)是一个带权有向图,如果把顶点集合V划分成k个互不相交的子集Vi (2≤k≤n, 1≤i≤k),使得对于E中的任何一条边(u, v),必有u∈Vi,v∈Vi+m (1≤i≤k, 1<i+m≤k),则称图G为多段图,称s∈V1为源点,t∈Vk为终点。多段图的最短路径问题求从源点到终点的最小代价路径。
2024-05-26 11:51:23 1230
原创 汉诺塔问题----递归(指数爆炸型)
汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
2024-05-25 17:40:17 429 1
原创 LCS-最长公共子序列(动态规划法)
若给定序列X={x1,x2,…,xm},则另一序列Z={z1,z2,…,zk},是X的子序列是指存在一个严格递增下标序列{i1,i2,…,ik}使得对于所有j=1,2,…,k有:zj=xij.
2024-05-25 16:09:50 849
原创 ⭐图着色问题(回溯法)
这里 当n=5,k=6,m=3时,输入实例表示有5个顶点,6条边,颜色的种类数为3。接下来的6行输入表示了边的连接关系,比如输入"1 2"表示顶点1和顶点2之间有一条边,以此类推。因此,回溯法在解决图着色问题时可作为一种简单有效的方法,但在实际应用中需要根据具体情况综合考虑其他解决方案以提高效率和准确性。3. 在图的染色问题中,回溯法的效率可能不如一些其他专门设计的图着色算法,如贪心算法和基于约束编程的方法。1. 在处理大规模复杂图时,由于需要遍历所有可能的情况,回溯法可能会消耗大量时间和空间。
2024-05-24 22:35:06 704 3
原创 最长上升子序列(dp动态规划)
给定一个序列,要求找到其中最长的一个升序子序列。也就是说,要找到一个子序列,使得其中的元素按照从小到大的顺序排列,并且长度最长。例如:(2,7,1,5,6,4,3,8,9)中求最长上升子序列 最长的为4,为什么呢?
2024-05-21 16:49:28 323
C语言24点小游戏 源码分享
2024-05-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人