摘要:
//这题真的很有思维难度啊,前前后后弄了2个小时才写完。//一定要首先将连续的一段找出来,如果target在里面就在里面找,如果不在连续段里就在另一部分找。//如果后面二分到都是连续段也是没事了,我们找的另一段也是连续的没有问题的。//最后面de的两个bug是判断nums[left] & nums, int target) { int left = 0; int ... 阅读全文
摘要:
//二分查找后,向两边扩展,二分错了两次,现在是对的。//还有就是vector可以用{}直接赋值很棒class Solution { public: vector searchRange(vector& nums, int target) { int left = 0; int right = nums.size()-1; int mid ... 阅读全文
摘要:
//在数组最后插入INT_MAX是个好方法class Solution { public: int searchInsert(vector& nums, int target) { nums.push_back(INT_MAX); for(int i=0;i < nums.size();i++){ if(target <= nums... 阅读全文
摘要:
//有个神奇的东西class Solution { public: int strStr(string haystack, string needle) { if(needle == "")return 0; int lenn = haystack.size()-needle.size(); //如果不用这个直接把haystack.size()-needl... 阅读全文
摘要:
easy 阅读全文
摘要:
class Solution { public: int removeDuplicates(vector& nums) { int res = 0; nums.push_back(INT_MAX); //注意末尾的补位 for(int i=0;i < nums.size()-1;i++){ if(nums[i] !... 阅读全文