- 博客(5)
- 收藏
- 关注
原创 力扣(LeetCode)791. 自定义字符串排序
思路:①先对T进行遍历,记录下T中的元素及个数②然后对S进行遍历,S即为题中定义的字母排序,那么凡是cMap[c] >=1 的,皆为在S和T中同时出现的,那么就留下这些元素,这个顺序刚好就是S的顺序,记得要把cMap[c]的值减掉③因为全是小写字母,所以可以对ASCII码97-122的字符进行遍历,如果这个字符的cMap[c]>=1就说明是存在于T中,却不在S中的,那么这些就额...
2019-06-04 18:25:32 380
原创 力扣(LeetCode)61. 旋转链表
思路:①先计算出head链表的长度②通过观察,发现题目的意思是从链表的末尾依次取出元素放置链表头部,那么这一定是个循环(参见示例2),所以在k>len的时候可以将k - n*len,那么新的k如果和len相等,那就刚好凑成一个循环,直接返回head即可,否则进入循环,找到第len-k个元素(头节点为1)设为p③temp = p->next,q = p->next,对q进行...
2019-06-03 18:42:42 338
原创 杂谈:六月二日晚刷题有感
敲代码不应该仅仅是敲代码,应该积极发掘代码的艺术性,敲出来的代码应该犹如一件精美的工艺品一样,让人看着赏心悦目,陶醉其中。我们应该化身攻城狮改造世界,而不仅仅是程序猿,更不应该是码农!...
2019-06-02 21:22:01 248
原创 力扣(LeetCode)1047. 删除字符串中的所有相邻重复项
思路:用栈来解决,在栈不为空的情况下,逐个取出字符然后和栈顶元素进行比较,如果相同则栈执行pop操作,然后取下一个字符串,如果不相等或者栈为空则执行push操作#include<iostream>#include<string>#include<stack>#include<algorithm>using namespace std;...
2019-06-02 21:17:12 759
原创 力扣(LeetCode)946. 验证栈序列
思路:按照顺序,每次从pushed里面取出一个元素,然后放入栈中通过while循环判断在栈不为空的情况下,栈顶元素是否和popped的元素是否相等,相等则该元素出栈,且popped迭代器向指向下一个元素示例1中:1、2、3、4入栈后,栈顶元素是4,popped第一个元素是4,那么popped的迭代器指向后一个5,栈顶元素执行pop操作后变为3,while循环终止,然后5入栈,此时再次进入...
2019-06-01 15:57:31 555
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人