标签目录:leetcode

以下是与标签 “leetcode” 相关联的文章

[leetcode_131]Palindrome Partitioning

找出所有的划分,满足条件:各划分中的字符串为回文。 基本思路是: 1.搜索 2.每个位置要么断开,要么不断断开,一旦断开,判断前面新生成的划分是否为回文,若是,继续查找,不是,该断开是无效的。 3.找到末尾,然后记录。 class Solution { public: vector<vector<string>>ans; vector<vector……

[leetcode_36]Valid Sudoku

这个题,哎哟我只想说我操。 开始题意理解错了,以为是判断某个数独是否有可行解,哎哟我擦,枚举?暴力。 用set集合做了一个 各种超时啊: struct PointOfBoard { set&lt;int&gt;set_p; bool IsExist; int val; PointOfBoard():IsExist(false),val(-1){set_p.clear();} }; class Solution { pu……

[leetcode_92]Reverse Linked List II

输入一个单向链表,要求将链表从m到n 逆序。不要开辟额外的空间。 开始题意读错了,以为将m和n两个节点交换位置。结果WA 但是后来一向,这个可以算是逆序的一个步骤,所以代码稍微改了改就AC了,其中额外注意m=1 n-m=1的情况。 class Solution { public: ListNode *reverseBetween(ListNode *head, int m, int n) { ……

[leetcode_67]Add Binary

90个题了,真心不容易。 两个字符串的二进制加法。找一个int来存储进位。 class Solution { public: string addBinary(string a, string b) { string ans = ""; int lenMin = a.length() < b.length()?a.length():b.length(); int inbit = 0; for(int i = 0;i < le……

[leetcode_31]Next Permutation

给定一个数组,求该数的序列的下一个序列。如果该序列已经是最后一个最大的序列了,输出最小的排序。 首先思路一定要清晰。 要找第一个值得交换的数——该数尽可能的靠近个位,且该数的前面存在一个数比该数大。然后找到前面那个比该数大的最小的数交换即可。 最后~该数前面的所有数升序排序。 int cmp(int a,int b) { ……