LeetCode第五天
leetcode 第五天
2018年1月6日
22.(566) Reshape the Matrix
JAVA
class Solution {public int[][] matrixReshape(int[][] nums, int r, int c) {int[][] newNums = new int[r][c];int size = nums.length*nums[0].length;if(r*c != size)return nums;for(int i=0;i<size;i++){newNums[i/c][i%c] = nums[i/nums[0].length][i%nums[0].length];}return newNums;}
}
23.(268) Missing Number
JAVA
class Solution {/*数列求和思想*/public int missingNumber(int[] nums) {int expectSum = nums.length*(nums.length+1)/2;int actualSum = 0;for(int num : nums) actualSum += num;return expectSum - actualSum;}
}
24.(243) ==Shortest Word Distance==
JAVA
class Solution {public int shortestDistance(String[] words,String word1,String word2) {int idx1 = -1,idx2 = -1;int minDistance = words.length;int currentDistance;for(int i =0;i<words.length;i++){if(words[i].equals(word1))idx1=i;else if(words[i].equals(word2))idx2=i;if(idx1 != -1 && idx2 != -1){minDistance = Math.min(minDistance,Math.abs(idx1-idx2));}}return minDistance;}
}
25.(561) Array Partition I
JAVA
class Solution {public int arrayPairSum(int[] nums) {Arrays.sort(nums);int minSum = 0;for(int i = 0;i<nums.length;i+=2){minSum += Math.min(nums[i],nums[i+1]);}return minSum;}
}
26.(746) ==Min Cost Climbing Stairs==
==新知识点:动态规划(有点难度)==
JAVA
class Solution {public int minCostClimbingStairs(int[] cost) {int f1=0;int f2=0;int f3=0;//f3为到达每一个楼层所需要花费的最小钱数(此楼层花费不算)for(int i = 2;i <= cost.length;i++){f3 = Math.min(f1+cost[i-2],f2+cost[i-1]);f1 = f2;f2 = f3;}return f3;}
}
27.(724) Find Pivot Index
JAVA
class Solution {public int pivotIndex(int[] nums) {int sum = 0,leftSum = 0;for(int num : nums) sum+=num;for(int i = 0;i < nums.length;i++){if(leftSum == sum - leftSum - nums[i])return i;leftSum += nums[i];}return -1;}
}
28.(66) Plus One
JAVA
class Solution {public int[] plusOne(int[] digits) {int n = digits.length;for(int i = n-1;i>=0;i--){if(digits[i]<9){digits[i]++;return digits;}digits[i] = 0;}//此处是为了防止原始数字为999...的情况int[] result = new int[n+1];result[0] = 1;return result;}
}
29.(1) Two Sum
==注意Map/HashMap的声明、get()/containsKey()/put()等操作==
JAVA
class Solution {public int[] twoSum(int[] nums, int target) {Map<Integer,Integer> map = new HashMap<Integer,Integer>();int[] result;for(int i = 0;i<nums.length;i++){if(map.containsKey(target - nums[i])){return new int[] {map.get(target-nums[i]),i};}else{map.put(nums[i],i);}}return null;}
}
转载于:https://www.cnblogs.com/guoyaohua/p/8215722.html
LeetCode第五天相关推荐
- leetCode第五题-求字符串最长回文字符串
原题链接: 最长回文字符串 给你一个字符串 s,找到 s 中最长的回文子串. 示例 1: 输入:s = "babad" 输出:"bab" 解释:"ab ...
- 刷leetcode第五题-最长回文字符串
2019独角兽企业重金招聘Python工程师标准>>> char* longestPalindrome(char* s) {int max_len = 1;char* st = s; ...
- LeetCode第五题答案(time limite exceeded) C++ time limit exceeded
这个是最开始写的brutal answer. 遍历所有子串,算法效率不高,虽然结果正确,但在LeetCode上time limit exceeded.下一篇附上改进代码. class Solution ...
- LeetCode练习五:哈希表
文章目录 一.哈希表 1.1 哈希表简介 1.2 哈希函数 1.2.1 直接定址法 1.2.2 除留余数法 1.2.3 平方取中法 2.4 基数转换法 1.3 哈希冲突 1.3.1 开放地址法 1.3 ...
- 【Leetcode 专题五】数组和哈希表
目录 一.前言 二.解题思路和代码整理 2.1.数组重建 Leetcode283. 移动零 Leetcode27. 移除元素 Leetcode26. 删除有序数组中的重复项 2.2.数组双指针 Lee ...
- leetcode 第五题 Longest Palindromic Substring (java)
Longest Palindromic Substring Given a string S, find the longest palindromic substring in S. You may ...
- leetcode题解(五)
给定一个只包含字符'(',')','{','}','['和']'的字符串,确定输入字符串是否有效. 如果输入字符串有效:必须使用相同类型的括号关闭左括号. 必须以正确的顺序关闭打开括号. 请注意,空字 ...
- 最长回文串_LeetCode解析,第五题:最长回文子串
LeetCode第五题:最长回文子串 5: 英文题面: Given a string s, find the longest palindromic substring in s. You may a ...
- 化工热力学补考成功,几天没有头脑了,赶紧赏自己几题Leetcode动态规划算法最长系列
@Author:Runsen @Date:2020/10/9 "恭喜你昨天,化工热力学补考成功!" "区区化工热力学还想让我重修,只不过浪费了我九月一半的精力和十月的九成 ...
最新文章
- PHP 开发中的外围资源性能分析(一)
- pku1384---Piggy-Bank(动态规划)
- 4.2 One-Shot 学习-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 收集的yum命令博文
- C++11新特性之八——函数对象function
- 绘制基础知识-canvas paint
- SpringBoot xml层SQL update之foreach循环的坑
- AR科技贯穿里约奥运始终 腾讯QQ营销顺风车值了
- sass08 if while for each
- 超过千字的文章,才统计勤写标兵
- 企业如何选择最佳的SSL
- 数理逻辑—24个(16组)重要等值式
- ccpc2016长春站打铁记(后记)
- excel表格打印每页都有表头_Excel打印时怎么让每一页都包括表头?
- mangodb 高频数据_MongoDB和数据流:实现一个MongoDB Kafka消费者
- CSS学习笔记 01、CSS3基础知识学习
- docker 更改阿里云镜像
- ERROR: cannot launch node of type [map_server/map_server]: can't locate node [map_server] in package
- centos系统时区设置,美国西五区
- OpenFOAM动网格的壁面边界通量修正