算法
算法小总结
桐人,奥龙
猛学自然强!!!
展开
-
蓝桥杯简单题
经过分析,我发现很多的合数都是有2,3最小的素数构成的,还有的是5,7这种素数构成,但是这种相较于2,3还是占比很小的,那么我们是不是可以提前判断是否为2,3的合数呢???原创 2023-04-12 23:56:07 · 108 阅读 · 3 评论 -
蓝桥杯简单题---质因数
而且最后一个质因数输出的时候要注意不能含有后面的*我们可以发现这里的要求的是。,还有更好的办法吗?即是质数又是因数的数。原创 2023-04-22 19:52:25 · 54 阅读 · 0 评论 -
LeetCode删除链表中的节点(中等)
3.将这个位置的值换成下一个节点的值,并且让他的下一个next域指向下下一个节点,也就是用本位节点来替换下一位节点,不就是相当于是删除了本节点。但是方法一是基于有头结点,方法二基于有他的上一个节点,这里他只给了本节点,他让你自己扇自己(就很狠)原创 2023-04-28 08:07:29 · 55 阅读 · 0 评论 -
蓝桥杯简单----阿尔法乘积(差点儿磕死我)
1.这里的输入的数是10位数的数字,int是9位数的数字所以我们不能使用int型。我们需要注意的就是mul的意义是什么,我们什么时候需要进行重置。2.只有当最后的值是小与10的时候才能输出。原创 2023-04-23 13:23:45 · 329 阅读 · 0 评论 -
打印菱形图案(实心,空心)
这种打图案的题是最难的(个人觉得),但是只要找到了一定的规律简单了。代码解释的蛮清楚的了,需要强调的是:找规律,找规律,找规律。如果感性去可以来看看。多多重复,百炼成钢。原创 2023-04-13 16:54:46 · 155 阅读 · 0 评论 -
LeetCode链表(合并0之间的节点)
2.我们可以直接使用原来的链表进行操作,但是要注意的点还是很细的,我们边看代码边说。1.我们可以使用一个全新的链表来存储这些值。这个代码没有任何解释,真的是看得起我。3.我们来看看更简单的代码。我们来看看我的代码吧。原创 2023-04-29 08:04:55 · 74 阅读 · 0 评论 -
蓝桥杯简单题打卡第三天1
对于这道题,题目上说明的不太明确,输入的时候应该是v1,v2,s,t,l。第二种判断形式显然是更优的。原创 2023-04-13 16:43:26 · 55 阅读 · 0 评论 -
蓝桥杯简单题----数字黑洞
我们的难点就是在当4位数字中有0时,我们要怎么做呢???原创 2023-04-20 00:15:10 · 78 阅读 · 0 评论 -
leetcode无重复字符的最长子串【中等】
我们能看到这里我使用了一个right变量,是为了记录右边的边界,但是为什么需要记录呢?当left找到right,更新right并且是right后移,然后开始下一次的查找。此时我的left位置不变,same=0,所以算的上是一次重新的查找并记录。如果出现了相同的,那么更新left并跳出,进行max,right的更新。用的是滑动窗口的方法。原创 2023-04-27 08:22:23 · 45 阅读 · 0 评论 -
蓝桥杯简单题分享
这里重要的是结束时间的判断,对m表示意义的判断(如果错认为m表示的是行数,那就错了,因为当判断到最后的时候m还没有来得急自增就已经结束了)我们在对字符串进行分割的时候,我们使用了一个循环就解决了,这是一种比较节省时间的方法原创 2023-04-12 23:19:20 · 86 阅读 · 0 评论 -
蓝桥杯简单题---阶乘相关计算
有人回问mul=((mul%1000)*n)%1000为什么要取那么多次余,在计算的最后取余也是一样的吗?1.输入的数是n(n原创 2023-04-23 13:52:07 · 58 阅读 · 0 评论 -
蓝桥杯简单题----栅格打印问题
3.我们输出的时候当输出了3行之后还是要继续输出一行并且我们的每一行在输出的时候我们要在输出的结尾补上一个+或者|就是我们刚刚说的那个错误-----我们要保证行,列都是大于0我们只需在输入之后加上判断行列大于0就可以了原创 2023-04-20 23:54:10 · 78 阅读 · 0 评论 -
蓝桥杯简单题---寻找三位数
个位,十位,百位各不相等当数字中不能出现0各个数字各不相同原创 2023-04-19 07:24:08 · 177 阅读 · 0 评论 -
LeetCode找到两个链表的第一个重合节点
abs()--;这种写法是不被允许的,因为计算的值计算机认为是一个常数,而自增自减的操作都是对于变量进行的操作,所以我们需要现将他赋值给变量1.如果他们的有相同的节点,那么应该是从后向前数最后一个相同的节点是从前向后数第一个相同的节点,这个节点是要返回的节点;我们的求法是先计算两个链表的长度,然后让他们齐平,然后同时向后走,如果他们的地址相同,这就是需要返回的值,我们不需要担心如果永远没有相同的节点怎么办,因为他们会最终同时到达null,一定会相同原创 2023-04-30 08:34:49 · 121 阅读 · 0 评论 -
质筛法---易错点
我在使用质筛法的时候出现了如下的错误,希望能帮到大家。原创 2023-08-07 23:00:49 · 172 阅读 · 1 评论 -
快排+归并
快排和归并是两个重要的排序,我们在使用的时候需要无脑的使用(就是不需要思考就能使用出来,这里给出了相应的模版)原创 2023-06-04 11:31:27 · 832 阅读 · 5 评论 -
LeetCode排序数组(常用排序一一实现)
快排第一次移动的必须是右边的角标,因为现在我们是以左边的为比较的对象,所以开始的时候必须是右边的角标先动。我们的快排还是无法通过本题----因为我们每次排序选取的比较对象是首元素没有随机性,需要改进。这道题他会设置一个数据量特别特别大的案例,对于一般的算法是一定过不去的。4.希尔排序---插入排序的进阶,时间复杂度。5.快排---时间复杂度O(nlogn)1.冒泡排序---这种的时间复杂度是。2.选择排序---时间复杂的是。3.插入排序---时间复杂度。O(n*n),也是不能过的去的。原创 2023-06-03 16:07:44 · 358 阅读 · 3 评论 -
LeetCode搜索插入位置(简单)
这个题最关键的就是返回最后一个记录的位置:nums[pos-1]原创 2023-05-02 11:22:21 · 48 阅读 · 0 评论 -
LeetCode翻转链表
如果我们需要进行链表的翻转是不是最后的结果是从后向前,那么我们递归的时候也应该先对最后的进行操作,,先走到最后的位置在进行其他的操作,因为你想啊,然后我们每次返回的都应该是翻转后的链表的头结点。原创 2023-04-29 08:32:15 · 54 阅读 · 0 评论 -
9_21洛谷刷题,前缀和
9_21洛谷刷题,前缀和。原创 2023-09-21 23:49:18 · 93 阅读 · 0 评论 -
最短路相关思想总结
将数据读入,因为不知道那个点是负环的起点所有每个点都有可能–>将所有点加入队列,如果距离更小,更新距离并将此点加入队列。因为是多源汇,所有每个点都可能使起点,所以在初始化的时候需要注意将每个点的自己到自己的距离初始化为0。spfa是对bellman_fold算法的升级,将出发点加入队列中(队列中的点都是变化的点)每次找到最近的点,记录这个点的访问状态,使用这个点对其他的点进行更新,最后返回最短路。dijkstra算法需要找到每次的最短的边,所以需要使用优先队列来快速取出最短的距离。将所有的点读入邻接表。原创 2023-08-11 21:57:07 · 363 阅读 · 2 评论 -
二叉树习题
【代码】二叉树习题。原创 2023-09-15 18:46:34 · 74 阅读 · 0 评论 -
快排+归并非递归实现
注意每次进行排序的时候都需要返回他们中间的那个位置(不能使用l+r>>1的方式直接确定中的位置)原创 2023-09-27 14:14:51 · 84 阅读 · 0 评论 -
二分查找的降序查找
【代码】二分查找的降序查找。原创 2023-09-03 16:55:45 · 234 阅读 · 2 评论 -
递归二进制【典中典】
【代码】递归二进制【典中典】原创 2023-09-13 20:32:34 · 132 阅读 · 0 评论 -
9_16搜索练习
此处使用的1标记走过的点,!=0证明走过,走过就停。原创 2023-09-19 21:54:56 · 63 阅读 · 0 评论 -
9_19,洛谷刷题记录
1.我们不能在dfs进行递归的时候回复现场,回复现场在回溯的时候进行的,但是我们的算法的思想是。这些数据是连在一起的,如果直接读入的话,会认为全部是一个数字,方法二:一字符串类型读入,将读入的数据按位转化为数字存起来。,就造成了错误,所以我们需要进行重新的数据读入。方法一:scanf(“%1d”,&x);2.第二个槽点就是在。原创 2023-09-19 21:55:11 · 98 阅读 · 0 评论