array
whitesun123
这个作者很懒,什么都没留下…
展开
-
two sum
Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same ...原创 2018-03-18 16:51:03 · 121 阅读 · 0 评论 -
合并有序数组
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:The number of elements initialized in nums1 and nums2 are m and n respectively.You may assume that nums...原创 2018-06-09 11:21:27 · 297 阅读 · 0 评论 -
数组存在重复元素
给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数应该返回 true。如果每个元素都不相同,则返回 false。思路:判断重复,首先就想到了Set,创建一个set,把每个数组元素放进去判断是否重复,解法一:判断重复,首先就想到了Set,创建一个set,把每个数组元素放进去判断是否重复,public boolean containsDuplicate(int[] nums)...原创 2018-04-06 12:50:03 · 3248 阅读 · 0 评论 -
反转字符串
请编写一个函数,其功能是将输入的字符串反转过来。解法一:转为数组public String reverseString(String s) { char[] a = s.toCharArray(); /* System.out.println(a[1]);*/ int start = 0; int end = a.length-1...原创 2018-04-12 11:31:20 · 305 阅读 · 0 评论 -
旋转数组
将包含 n 个元素的数组向右旋转 k 步。例如,如果 n = 7 , k = 3,给定数组 [1,2,3,4,5,6,7] ,向右旋转后的结果为 [5,6,7,1,2,3,4]。1.解法一:借助O(n)O(n)的空间解法。再利用(i + k) % n = 旋转后的位置,可以将原有数组中的数据复制到新数组中。public int[] rotate(int[] nums, int k) { ...原创 2018-04-12 10:16:39 · 143 阅读 · 0 评论 -
Move Zero
给定一个数组 nums, 编写一个函数将所有 0 移动到它的末尾,同时保持非零元素的相对顺序。例如, 定义 nums = [0, 1, 0, 3, 12],调用函数之后, nums 应为 [1, 3, 12, 0, 0]。注意事项:必须在原数组上操作,不要为一个新数组分配额外空间。尽量减少操作总数。思路:本来是想从新排序,可是想不出来好的方法,那就先用一个特殊技巧方法一:只保留非零数,后面在加上零...原创 2018-03-29 15:56:19 · 233 阅读 · 0 评论 -
PLus One
给定一个非负整数组成的非空数组,给整数加一。可以假设整数不包含任何前导零,除了数字0本身。最高位数字存放在列表的首位。解析:大数加法问题,不能先转换为数加一后在转换为数组一个数组每一个数都是9,那么加一后长度会加一,后面都是0;如果不满足每一个数都是9,那么长度不会加一,那么遍历每个数,如果是九,那么这一位变为零,高位加一就是加一的结果java: public int[] plusOne(int[...原创 2018-03-27 19:44:03 · 132 阅读 · 0 评论 -
两个数组的交集 | ,||
给定两个数组,写一个方法来计算它们的交集注意: 输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 我们可以不考虑输出结果的顺序。跟进:如果给定的数组已经排好序呢?你将如何优化你的算法?如果 nums1 的大小比 nums2 小很多,哪种方法更优?如果nums2的元素存储在磁盘上,内存是有限的,你不能一次加载所有的元素到内存中,你该怎么办?一: 给定 nums1 = [1,...原创 2018-04-08 12:37:18 · 439 阅读 · 0 评论 -
Remone_Element
Given an array and a value, remove all instances of that value in-place and return the new length. Do not allocate extra space for another array, you must do this by modifying the input array in-plac...转载 2018-03-25 11:49:07 · 153 阅读 · 0 评论 -
Isvalid Sudo
判断一个数独是否有效,说明:一个有效的数独(填了一部分的)不一定是可解的,只要已经填的数字是有效的即可。分析:该题目不要判断整个数独是否有解,只需要判断当前给出的数独是否有效。因此只需要判断行和列是否有效,判断每个块是否有效。而判断一行中是否有重复的数字,最好的数据结构莫过于Set结构了。使用rowSet,colSet两个Set结构来分别保存当前遍历的行和列,(i, j)表示行,则(j, i)就表...转载 2018-03-30 14:38:32 · 162 阅读 · 0 评论 -
Rmove dumplicates
Given a sorted array, remove the duplicates in-place such that each element appear only once and return the new length. Do not allocate extra space for another array, you must do this by modifying th...原创 2018-03-20 13:59:20 · 378 阅读 · 0 评论 -
Best Time to Buy and Sell Stock
Say you have an array for which the ith element is the price of a given stock on day i. If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), d...原创 2018-03-23 14:43:38 · 91 阅读 · 0 评论 -
Max Area of Island
Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) connected 4-directionally (horizontal or vertical.) You may assume all four edges of the grid are surrou...转载 2018-03-22 14:52:59 · 171 阅读 · 0 评论 -
猴子报数选国王问题
问题: 猴子选大王,假设有M个猴子围成一圈,从1开始报数,数到N的猴子退出,最后剩下的猴子就是大王, 写出程序求出最后是大王的那只猴子最初的位置。 解析:问题本来只需要求解剩下猴子的序号,现在提出一个要求,要求把呗淘汰猴子的顺序记录下来,只需要再创建一个List即可 import java.util.ArrayList; import java.util.List; /* * * 猴...原创 2018-09-16 09:44:40 · 1452 阅读 · 0 评论