#array

leetcode 11. Container With Most Water 、42. Trapping Rain Water 、238. Product of Array Except Self 、407. Trapping Rain Water II

11.ContainerWithMostWaterhttps://www.cnblogs.com/grandyang/p/4455109.html用双指针向中间滑动,较小的高度就作为当前情况的高度,然后循环找容量的最大值。不管两个指针中间有多少高度的柱子,只管两头,因为两头的才决定最大容量。classSolution{...

leetcode 384. Shuffle an Array

384. ShuffleanArrayc++random函数:https://www.jb51.net/article/124108.htmrand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数。这样,如果你要产生0~10的10个整数,可以表达为:intN=ra...

leetcode 108. Convert Sorted Array to Binary Search Tree 、109. Convert Sorted List to Binary Search Tree

108.ConvertSortedArraytoBinarySearchTree这个题使用二分查找,主要要注意边界条件。如果left>right,就返回NULL。每次更新的时候是mid-1,mid+1。自己推一下基本就可以验证了。classSolution{public:TreeNode*sortedArrayT...

leetcode 88. Merge Sorted Array

合并到一个新的数组,直接比较就好了,这个题目是将nums1、nums2合并到nums1,nums1有许多多余的空间如果按照合并到一个新的数组从小比到大的方式进行比较,就需要每次挪动nums1的数组。本题可以采用从大到小的比较方式,这样就不用每次挪动数组。同时注意,m和n都是可以为0的,nums1不能为空,但nums2可...
代码星球 ·2020-10-13

34. Find First and Last Position of Element in Sorted Array

这个是用递归的方式写的,非递归也可以写。注意判断的时候可能出现数组越界的问题,所以要判断mid-1<0和mid+1>=nums.size(),即数组的头和数组的尾如果不判断[1],1这种就会报错classSolution{public:vector<int>searchRange(vector&...

leetcode 560. Subarray Sum Equals K 、523. Continuous Subarray Sum、 325.Maximum Size Subarray Sum Equals k(lintcode 911)

整体上3个题都是求subarray,都是同一个思想,通过累加,然后判断和目标k值之间的关系,然后查看之前子数组的累加和。map的存储:560题是存储的当前的累加和与个数      561题是存储的当前累加和的余数与第一次出现这个余数的位置      325题存储的是当前累加和与第一次出现这个和的位置其实561与325都...

leetcode 4. Median of Two Sorted Arrays

将找两个排序数组的中间值转换为找两个数组的第k小的数,findKthNumber是在两个数组中找第k小的数。每次找k/2个数,如果一个数组最末尾那个小于另一个,那这个数组的前面部分肯定属于整个k/2里面。start2+mid+1每次加了1,说明start1、start2都是新的数,属于当前的k的数,所以mid要用k/2...

581. Shortest Unsorted Continuous Subarray

begin,end必须初始化,如果整个数组是排序好的,经过for循环后,begin、end还是原始的值。注意:end必须比begin小1,因为最终的长度是end-begin+1,关键在于这个+1的地方 classSolution{public:intfindUnsortedSubarray(vector<...

leetcode 350. Intersection of Two Arrays II

最开始写成inti,j=0;就报错了 classSolution{public:vector<int>intersect(vector<int>&nums1,vector<int>&nums2){vector<int>result;intleng...

leetcode 189. Rotate Array

注意k可能大于lengthclassSolution{public:voidrotate(vector<int>&nums,intk){intlength=nums.size();if(length<=1||k<=0)return;k=k%length;rotate_core(nums,...
代码星球 ·2020-10-13

剑指offer 最小的k个数 、 leetcode 215. Kth Largest Element in an Array 、lintcode 80. Median、295. Find Median from Data Stream(剑指 数据流中位数) topK

  注意multiset的一个bug:multiset带一个参数的erase函数原型有两种。一是传递一个元素值,如上面例子代码中,这时候删除的是集合中所有值等于输入值的元素,并且返回删除的元素个数;另外一种是传递一个指向某个元素的iterator,这时候删除的就是这个对应的元素,无返回值。https...

leetcode 53. Maximum Subarray 、152. Maximum Product Subarray

53.MaximumSubarray 之前的值小于0就不加了。dp[i]表示以i结尾当前的最大和,所以需要用一个变量保存最大值。动态规划的方法:classSolution{public:intmaxSubArray(vector<int>&nums){vector<int>dp...

用list去初始化numpy的array数组 numpy的array和python中自带的list之间相互转化

http://blog.csdn.net/baiyu9821179/article/details/53365476 a=([3.234,34,3.777,6.33]) a为python的list类型将a转化为numpy的array: np.array(a)array([ 3.2...

array和matrix

array:数组matrix:矩阵list:列表 a=[[1,2,3],[4,5,6]]      两种array的定义方式,第一种方式可以看出list不是array,但却有很大的联系a=np.array(a)c=np.array([[4,3],[2,1]])a=[[1,2],[3,4]]         l...
代码星球 ·2020-10-11
首页上一页...1314151617...下一页尾页