自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 leetcoed刷题日记之第六题(跳跃游戏)(贪心算法)

也可以返回正确结果,而且时间效率更高,因为不需要进行判断,加这个判断条件是为了早一点结束循环,如果想要追求更高的时间效率,可以把这个判断语句转化成循环条件。对于每一个存放在数组中的位置index,判断是否可达,即首先要判断能否从第一个位置到达第二个位置,如果不能直接返回false。),然后判断x是否>=数组的最后一位元素索引y=num.length -1 ,是 返回true ,不是进入下一轮循环。我一开始认为的第一个下标是num[1],每个元素代表你在该位置可以跳跃的长度,结果写的代码局限性很大,

2024-11-04 21:47:17 261

原创 leetcode刷题日记之第五题(划分字母区间)(贪心算法)

因为如果是这样要求,那么贪心的给他分成更多片段便没有了意义,因为最多的片段完全可以是每个单独字母自成一个片段,单独的一个字母中也满足没有出现相同字母的要求。模块,将当前片段的最大索引赋值给end,然后判断如果当前索引值 = end ,那么该片段结束,更新下一个片段的开始索引 start = i + 1;那么首先,遍历生成每一个字母的最大索引值,然后从字符串的左边向右边遍历,初始化开始索引start =0 和结束索引 end =0 ,利用。即"a" "b" "a" "b"......这两句话之间差别很大。

2024-11-02 21:28:33 226

原创 leetcode刷题日记第四题(买卖股票的最佳时机)(贪心算法)

用这段代码,解决上面两个数组[7,1,5,3,6,4],[7,6,4,3,1]里的内容是没有问题的。其实的正确思路应该是:先假定数组中的最小数minnumber是一个极大的数值,默认maxprofit = 0,然后去遍历数组中的数,如果给定的数组是[2,4,1],该代码之间判断1后面没有数,直接返回0,实际上这个数值之下是可以有2的收益的。我第一次做时候的思路:首先找到数组中最小的那个数,如果它的位置在最后一个,直接返回0;否则,找到最小的那个数之后的最大数,利润就是最大数-最小数;

2024-10-31 20:39:48 291

原创 leetcode刷题日记之第一题(两数之和)(哈希表解决)

这时候找到数值2所在位置即可,它的位置存储在哈希表中,用map[2]访问。下面一种方法用哈希表,用当前数值作为键,当前数值的索引为值。返回结果 map[2],和当前索引i 也就是[0,1];这段代码没什么好说的,就是双循环加一个判断条件即可解决。所以执行else后的内容,将索引0赋值给map[2],数组为[2,7,11,15],target = 9;差值 targetNum = 9 - 2 =7;插值索引为map[7],但是map[7]不存在。插值索引为map[2],map[2]存在。

2024-10-31 19:18:11 129

原创 leetcode刷题日记之第三题(最长连续序列)

这种做法的时间复杂度过高,因为并不是所有的数都需要被当作起始序列去遍历,比如说:上图数组[100,4,200,1,3,2]中2,3,4均不需要当作起始序列去遍历,因为有1存在,所以我们可以考虑对于数组中的每一个数num,在遍历后首先判断是否存在num-1这个数,如果存在,说明这个数不能当作起始序列,如果不存在,说明这个数可以当作起始序列。比如:[100,4,200,1,3,2]中100-1=99,然后数组中不存在99,说明100可以作为起始序列,又比如4-1=3,数组中存在3,说明4不可以作为起始序列。

2024-10-30 18:47:20 164

原创 leetcode刷题日记之第二题(字母异位词分组)(哈希表)

简单说就是构成一个字母的单词,重新排序可以组成新的单词,要求把strs数组中包含字母一样的单词放到一个新的数组中。解题思路就是用到哈希表来解决,这个题可以用两个指标来作为哈希表的键,首先说第一个。tea eat中 a e t 分别只出现了一次,

2024-10-29 21:16:22 196

原创 数据结构之哈夫曼树(C语言)

这个节点是当前最小权重的节点之一。在第二个内层循环中,代码继续寻找第二个最小权重的节点。如果找到一个未分配父节点且权重小于当前找到的最小节点。这段代码使用另一个内层循环找到第三个未被分配父节点的节点,这个节点是当前第二小权重的节点。在第二个内层循环中,代码继续寻找第二小权重的节点。用10,2,3,6,8五个权值作为叶子结点,构造二叉树,可能有多种不同形态。新节点的权重是两个最小节点权重的和。带权路径长度=结点的权值 *从根结点到该节点的路径长度。的值,准备下一轮循环,寻找下一对最小权重节点。

2024-05-20 21:14:08 318 1

原创 数据结构之二叉树(C语言)

这里每次递归都会先判断当前结点是否为空,如果为空,意味着左结点或者右节点到底了,会返回上一层函数的第二个postSearch函数。这里在创建二叉树的时候还用到了队列,创建了一个指针类型的一维数组,用它来存放二叉节点,读取下一个可用的字符,不管它是不是空白字符。:先序遍历会首先访问根节点,然后是左子树上的所有节点,最后是右子树上的所有节点。:后序遍历会访问左子树上的所有节点,然后是右子树上的所有节点,最后访问根节点。:中序遍历会首先访问左子树上的所有节点,然后是根节点,最后是右子树上的所有节点。

2024-05-06 20:12:01 296

原创 数据结构之队列(C语言)

为了保证rear==front是队空的唯一条件,则入队时,不允许rear==front,入队时,将rear在循环意义下加1,如果rear追上了front,则队满,从而当rear==front时,s->rear=s->front=Max-1也可以是s->rear=s->front=0。将front在循环意义下加1,将原来的队头元素值赋值给指针变量x的指向 ,并返回1。但是这两种条件均导致,队列中能容纳的元素为Max-1(只是在本代码中是这样的)循环队列中,入队时,会出现假满(上溢)的情况 ,

2024-04-15 21:48:21 299

原创 数据库课程设计之采购与库存管理系统

此外,在处理大量数据时,我意识到了性能优化和安全性的重要性。在做课设的过程中我们的主要亮点是添加了MRP计算和库存预警,MRP计算可以通过输入需求数量和需求时间结合安全库存和采购提前期计算出实际的采购数量与采购时间,然后添加到任务单里进行分配,另外一个功能库存预警,编写了两个触发器,在出库表和入库表里更新实发数量和实收数量时更新库存表,如果库存表中的数量小于安全库存,则发出警告,限额领料申请,生产部门通过之前提交的物料需求单进行限额领料,采购部门将其所需要的物资按合同购置,物资的具体信息储存在合同单里。

2024-02-05 11:11:52 1323 1

原创 python课程设计之酒店信息管理系统

大一时做的python课设

2024-01-20 11:48:03 1211 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除