【寒假第一天】LeetCode刷题
创始人
2024-05-07 00:35:23
0

🌈一.选择题

👿1.

D

堆排序·有两种排序方法:

大堆排序-----根结点要大于他的左右子节点,但是左右子节点不需要比较大小。

小堆排序------根结点要小于他的左右子节点,但是左右子节点不需要比较大小。

👿2.

B

25->13->12->9,这是25的全部左子树,确实是大堆排列。12,9分别是13的左右子树。

25->10->18是25的右子树,所以18要先和10比较,然后交换,18再和25比较,18<25,不进行交换。所以是比较2次。

👿3.

A

🌈二.编程题

🍄1.有效的字母异位词

分析这个题之前先了解一下啥是字母异味词。就是给你n个字母,你随便排序,你排序的这几种就是字母异味词。这个题就是反过来让你判断这几个排序用的n=个数是不是一样。
其实这个题的大致思路也很简单,ascll码值都知道吧,直接按照码表上的顺序进行排序,如果俩个字符串排序后的内容一样,就说明就是字母异味词。
这个要是这样用就没啥意思了。我们在用哈希表炫一个。先开一个Vector类型长度为26的哈希表(就是一个数组),初始值都默认是0,然后把s字符串映射上去,初始值+1,然后映射t上去,这次不是加了,而是映射上的都-1,到最后总结,如果每一位全部是原来的0,那么是s,t他俩就是异位词,只要有-1,1就不是异位词。
这里有两点需要注意:
1.为啥都是ch='a',‘a’在ascll中是97,但是我们开的空间是从0开始的,为了和我们开的0-25的空间序号对应,所以就-97(‘a’).
2.还有一个疑问是最后那个if中的判断,为啥要<0,有的人该问为啥不是!=0,s,t的长度是相同的,因为开头的if已经判断了,只要当两者全部相同才有可能为0,其他情况,s-t都是-1。结果是1的情况是两者不一样长。

当然了,也可以不先判断长度,最后那个条件就是!=0。看下面这个代码:

🍄2.判断字符串的两半是否相似

简单题我重拳出击:

第一种、先判断字符串s中的元音字母,判断出来后再判断元音在字符串的前半段还是后半段。

第二种、把字符串s平分成两段,各自判断自己的元音数,最后比较一下就行了。

注意:
为啥最后返回的是cnt1==cnt2?注意主函数的返回值类型是bool,如果两者相等,返回true,不相等返回false。
substr函数的作用是:复制子字符串,要求从指定位置开始,并具有指定的长度。如果没有指定长度或者是指定长度超出了源字符串的长度,则子字符串将延续到源字符串的结尾。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...