算法大挑战

A collection of 16 posts

算法大挑战
算法大挑战

算法大挑战

一、前记(3/3) 怎么感觉现在都顺延了一天,不行不能如此懒惰,这个星期必然打满卡。今天没有使用Python来写题,因为今天的题目是我结合考研专业课复习来选择的题目。用C语言写的,还是比较有意思。 二、题目描述 这个题是一个典型的单链表插入重组的一个问题。只要是链表的位置移动都还是比较简单的,只需要把地址赋值一下就可以了。 三、解题思路 1、我的思路 我的思路简简单单,普普通通。重新开辟一块新的单链表内存空间(t=head),大小就为struct ListNode就行,作用是用于记录;然后比较两个单链表里面的值,让t-&

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(2/3) 差点这个星期的blog也给咕咕了。数学强化学到积分那里好难。还好坚持下来今天搞定了(意味着高数上的内容全部搞定),晚上把我的apple pencil充上电再总结一下高数上的内容。(美滋滋!!!)专业课肝到线性表就觉得好烦,书本是使用C or C艹进行讲解的,我一个Python简直顶不住。语法什么的也太不一样了吧。不过还好,数据结构以前的呃内容都还是记得到,不难不难。 二、题目描述u1s1,这个题如果是C来写的话,我个人觉得可能会比较麻烦,可能会创建一个新的数组外加双指针来解决问题(只是猜想,还没有具体的验证)。但是在Python里面就不用去考虑这些有的没的。 三、解题思路

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(1/3) 最近有在认真的学习。最近把CISCN的报名弄完成了一下,这就标志着有可能是大学里最后一场网络安全竞赛就要来了。(爷青结😢) 二、题目描述 这道题我在看的时候就感觉奇奇怪怪。作为一个CRYPTO手,我一般要得到平方根的结果直接就是:import math,来进行各种数学运算。但是在这个里面应该是要学习一些算法吧。 三、解题思路 1、我的思路 方法一:调用math库 没啥说的,注意题目要求就行 参考代码 import math class Solution:

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(3/3) 嘿嘿!非常不好意思,这一篇算法咕咕了一天,还好今天有认真的做人。因为最近有好多的聚会(外公过86岁生日)和比赛(WMCTF),所以这一篇blog在上个星期就没有来得及写。这个星期要好好做人了,上个星期过的太快乐了。争取留下时间可以和女朋友去一趟重庆耍。 二、题目描述三、解题思路 1、我的思路 我的思路比较取巧,应该算是懒人专属。二进制转十进制的过程就不必叙述了,不难,不会的可以上网去百度一下。首先第一步:就是先将索引顺序转换成正确的运算顺序[::-1]。第二步:

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(2/3) 今天尝试了一下将pycharm里面的代码直接传到Github上,还是比较方便的,感觉多了一个生产力!!!(嘿嘿)可惜最近没啥项目可以传到GitHub里面,之前写的大数据网站和python爬虫的东西都删掉了(可惜可惜)。以后会慢慢地写一些大一点的项目,写完之后会传到GitHub上面。 二、题目描述三、解题思路 1、我的思路 其实我的思路比较简单:list不能直接转化成int。那我先将list转化成str,再将str转换成int。再做一个简单的+1算法,最后int->str->list就完成了。 但在这里我学到了一个非常有意思的函数--map(

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(1/3) 嘿嘿,今天没啥想复习的念头,趁机把博客整理了一下,把“算法大挑战”这个系列单独列了出来。博客就没有那么杂乱无章了。 二、题目描述 我觉得在示例那个位置应该再举两个例子出来: 示例: 输入:“” 输出:0 输入:“happy” 输出:5 三、解题思路 1、我的思路 其实这道题我一开始写错了,我以为题目的检查机制都是正常的字符串,像:“hello

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(3/3) 今天完成了本周的算法任务,这样一路一路的坚持下来还挺不容易的,希望自己能坚持下来。这周学习到了两个非常重要的算法:第一个就是上次见到的非常有意思的KMP算法(会单独拿出来专门写一篇blog)。一个就是今天学习到的二分法。其实第一次见到二分法应该是在大一的时候,但是都已经记不得了,今天这个题目刚好可以使用二分法进行解决。 二、题目描述三、解题思路 1、我的思路 我的思路特别的常规。因为给的数组是一个顺序数组(从小到大),就按照顺序进行比较。当target<=nums[i]的时候就找到了适合target的索引值,返回i的值就可以。但是在这里一定要注意一点,

  • aaaaa
算法大挑战(KMP算法)
算法大挑战

算法大挑战(KMP算法)

一、前记(2/3) 浑浑噩噩,感觉每天的时间都不够用,到了12点总结的时候,发现还有一些题没做,还有一些东西没背(太烦!!)。数学题每天花上2,3个小时只能写上40道题左右,这在考研考试的时候怎么够用呢?单词背了就忘,好像每天都在和遗忘打仗。今天尝试着听了一下徐涛老师的考研政治,全程就是:我是谁?我在哪里?我在干嘛?如果到了后面还是这样不太好的复习状态,那可能会暂停一下“算法大挑战”这个系列。 二、题目描述 在这道题里面要注意几个点:1、haystack里面的有完整的needle字符串,而不是零散的字符。

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(1/3) 最近感觉特别地懈怠,大概丧了有两三天,书没有认真的读,题也没有认真的写。好在今天有及时的调整心态认真写题,要不然得继续丧下去。 二、题目描述u1s1,这个题目还是比较地好玩,这道题和上一道题也是有相似的地方。除了不能使用set()函数之外,其他地方我觉得思路都差不多,尤其是使用链表的这种方法。 三、解题思路 (1)我的思路 就是在nums里面,从左到右以此查找符合val的值,如果符合val的值,那么就删除。 #encoding:utf-8 class Solution(

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(3/3) 最近这两天天气都有一点阴晴不定的,希望大家都好好地保重自己的身体,别感冒了。今天还有一个好消息:考研数学我已经完整的复习一遍了。下一个阶段应该就到了强化阶段,开始要每天疯狂地刷题。(要开始苦逼了😢) 二、题目描述 在这个题里面有几个要点要特别注意:第一个就是给定的列表类型的,但是输出要求的是数组;第二个就是本身题目的要求:要没有重复的数值。 三、解题思路 1、我的解题思路 (1)u1s1,我的解题思路不是题目的要求。题目的标签要求是:数组,双指针。但是我的想法就是,

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(2/3) 果然之前留校一个人住宿感觉非常舒服,现在集中住宿导致我和室友的作息时间不太一样。惹不起惹不起,还是溜回家了。今天这篇blog是我在家里面写的,不得不感慨家里的机械键盘真好用,看显示器是真滴舒服。(啊哈哈哈哈哈哈) 二、题目描述三、解题思路 u1s1,这个题目我是真的没想出来,只有卑微地看了看网上的解题思路,才恍然大悟到:“原来Python也还是会有栈这种做法”。 其实我一开始主要是解决不了括号里面的逻辑问题,就是:“{()}”和“{)}(”这种的逻辑问题,我们都知道第一个是对的,而第二个是错的,但是我应该怎么用计算机的逻辑将这个判断出来呢?(莫法,确实Python没想到会使用到栈。但是现在这种方法我学会了!

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(1/3) 本周就结束了本学期的所有考试了,但还是有一堆作业(头疼)。现在进入了暑假,正是考研复习的“黄金期”。所以决定从这一周开始,到暑假结束,每周的算法题目降到3道/周(tcl,才坚持了一个4道/周的算法题目,我是懒(fei)狗(wu))。 二、题目描述三、解题思路 1、我的解题思路 u1s1,这道题确实把我难道了,题目里面给的范例是列表型的,但是又要把列表里面的每个单词拿出来,

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(4/4) 这周周末要考试,可能会停更blog一段时间。这次的题目非常有意思。 二、题目描述(u1s1,这道题的思路非常有意思) 三、题目分析 1、我的分析 在题目里面已经详细的描述了罗马数字在转换成数字的时候规则,即:最低位遇到4,9有特殊规则。因此我们可以使用Python3的字典,来对第i位和i+1位进行比较,如果第i位的数字小于第i+1位的数字,那么就是特殊规则(例:IV,IX)等,所以借此,

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前记(3/4) 呃啊......若不是作业太多我应该还可以再更新一下咕咕了好久的爬虫blog。最近事情好多,复盘省赛,写实验报告,考试复习,还要复习考研(修正带也用完了),基本都没有什么时间去放空自己了。 二、算法题目 这次做了一个比较经典的回文数题目 三、题目分析 1、我的分析 这道题和我第二道算法有点类似,直接就是将字符串倒序,然后看和原数字是否相等。如果和原数字相等就为回文数。在本题里面题目还加了一个条件(让题目变得简单了),如果是负数直接判定为False。 (Python3) ①转化成字符串 def

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前言(2/4) 最近是些事情太忙了,还是抽空写了一下算法题。这是本周的第二道算法题,也是算法系列里面的第二道题,希望自己可以加油坚持。 二、算法题目(这个题感觉不太难) 三、题目分析 1、我的分析 给了一个限定的条件32为有符号整数,也就是在整体上面进行旋转,无小数,但是有负数。Python3里面类型转换的优势可以立马体现出来。 #encoding:utf-8 class Solution: def reverse(self,x): if

  • aaaaa
算法大挑战
算法大挑战

算法大挑战

一、前言(1/4) 学习一下算法知识,感觉对以后都会有好处。目前定的任务是每周能做4道算法题,每次前言的位置都会打出(1/4)这样的样式,来督促自己学习。算法网站是leetcode,因为有很多人推荐。主要使用的语言是Python3。 二、算法题目 (u1s1,其实这个算法题把我稍微难到了一下) 三、分析 1、我的分析 这个算法因为给了一个实例,给了两个部分目标值(target)和一个数组值。我想的是我可以使用列表记录数组值的位置。以及target-num[i]

  • aaaaa