数组
凤梨No.1
这个作者很懒,什么都没留下…
展开
-
剑指Offer面试题39. 数组中出现次数超过一半的数字
面试题39. 数组中出现次数超过一半的数字题目思路一思路二思路三题目数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2限制:1 <= 数组长度 <= 50000思路一利用HashMap存储数组值及存在的次数。由于一个数组中有且仅有一个数字超过数组长度的一半,利用该特性不必遍历所有元素:1、先判断该元素是否在哈希表中,存原创 2020-06-15 20:33:32 · 104 阅读 · 0 评论 -
Leetcode面试题16.11:跳水板
面试题16.11:跳水板题目思路一——暴力题目你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer。你必须正好使用k块木板。编写一个方法,生成跳水板所有可能的长度。返回的长度需要从小到大排列。示例:输入:shorter = 1longer = 2k = 3输出: {3,4,5,6}提示:0 < shorter <= longer0 <= k <= 100000思路一——暴力由于需要原创 2020-06-14 16:56:14 · 242 阅读 · 0 评论 -
Leetcode90子集II
90子集II题目方案一题目给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: [1,2,2]输出:[ [2], [1], [1,2,2], [2,2], [1,2], [] ]方案一思路: 主要是参照子集I解答,采用递归回溯法。重点在于如何去除重复的子集合。class Solution { public List<List<Integer>> subsetsWithDup原创 2020-06-10 16:12:40 · 148 阅读 · 0 评论 -
数据结构之数组
数组数组基本知识点知识点一——简介知识点二——for each循环知识点三——数组初始化及匿名数组知识点四——数组拷贝知识点五——命令行参数知识点六——数组排序知识点七——多维数组数组类型例题——leedcode例题一——面试题03:数组中重复的数字数组基本知识点知识点一——简介数组占据一块连续的内存并按照顺序存储数据,并且再创建数组时指定数组的容量大小。数组读/写时间复杂度为O(1)。数组变量声明,需要指明数组元素类型和数组变量的名字(仅仅是声明并没有初始化为一个真正的数组):in原创 2020-06-10 15:14:09 · 383 阅读 · 0 评论 -
Leetcode34. 在排序数组中查找元素的第一个和最后一个位置
34:在排序数组中查找元素的第一个和最后一个位置题目思路一思路二题目给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是 O(log n) 级别。如果数组中不存在目标值,返回 [-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例 2:输入: nums = [5,7,7,8,8,10], target = 6输出: [-1,-1原创 2020-06-08 19:09:02 · 218 阅读 · 0 评论 -
剑指Offer面试题53查找数字
面试题53——I与II题目I——在排序数组种查找数字思路一思路二思路三——二分法题目II——0~n-1种缺失的数字思路一思路二——二分法题目I——在排序数组种查找数字统计一个数字在排序数组中出现的次数。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: 2示例 2:输入: nums = [5,7,7,8,8,10], target = 6输出: 0限制:0 <= 数组长度 <= 50000思路一利用双指针解决该题,分别找到重复原创 2020-06-02 11:09:22 · 245 阅读 · 0 评论 -
Leetcode121买卖股票的最佳时机
121买卖股票的最佳时机题目思路一:暴力解答思路二题目给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价原创 2020-05-30 09:50:59 · 94 阅读 · 0 评论 -
剑指Offer面试题4二维数组中的查找
面试题4.二维数组中的查找题目思路一思路二题目在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例: 现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16, 22],[10, 13, 14, 17, 24],[18, 21, 23, 26, 30]]给定 t原创 2020-05-29 17:17:50 · 159 阅读 · 0 评论