leetcode第一天
leetcode 第一天
2017年12月24日
第一次刷leetcode真的是好慢啊,三道题用了三个小时,而且都是简单题。
数组
1.(674)Longest Continuous Increasing Subsequence

JAVA
class Solution {
public int findLengthOfLCIS(int[] nums) {
int tem = 1 , length = 1;
if(nums.length==0) return 0;
for (int i = 0;i<nums.length -1;i++){
if ( nums[i+1] - nums[i] > 0){
tem ++;
length = Math.max(tem,length);
}else{
tem = 1;
}
}
return length;
}
}
Python
class Solution(object):
def findLengthOfLCIS(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
max_len = tem_len = 1
if len(nums)==0:
return 0
for i in range(len(nums)-1):
if nums[i+1] >nums [i]:
tem_len += 1
max_len = max(tem_len,max_len)
else:
tem_len = 1
return max_len
2.(283)Move Zeroes

JAVA
class Solution {
public void moveZeroes(int[] nums) {
int pointer = 0;
for (int i = 1; i<nums.length;i++){
if(nums[i]-nums[pointer] == nums[i]){
if(nums[i] != 0){
nums[pointer] = nums[i];
nums[i]=0;
pointer++;
}
}else pointer++;
}
}
}
Python
class Solution(object):
def moveZeroes(self, nums):
"""
:type nums: List[int]
:rtype: void Do not return anything, modify nums in-place instead.
"""
pointer = 0
for i in range(len(nums)):
if(nums[i]-nums[pointer] == nums[i]):
if(nums[i]!=0):
nums[pointer] = nums[i]
nums[i] = 0
pointer +=1
else:
pointer+=1
3.(581)Shortest Unsorted Continuous Subarray

算法:1.先找到排序错误子集的起止点和终止点。2.计算该子集内的最大值最小值。3.判断前部分序列是否有大于子集最小值的部分,后部分序列是否有小于最大值的部分。如果有则修改子序列起始点终点
JAVA
class Solution {
public int findUnsortedSubarray(int[] nums) {
boolean isFirst = true;
int left = 0,right = 0,min = Integer.MAX_VALUE,max=Integer.MIN_VALUE;
for(int i = 0;i<nums.length-1;i++){
if(nums[i+1] < nums[i]){
if(isFirst){
left = i;
right = i+1;
isFirst = false;
}else{
right = i+1;
}
}
}
for (int i = left;i<=right;i++){
min = Math.min(min,nums[i]);
max = Math.max(max,nums[i]);
}
for(int i=0;i <= left;i++){
if(nums[i] > min){
left = i;
}
}
for(int i = nums.length-1 ; i>=right;i--){
if(nums[i]<max){
right = i;
}
}
return right==0?0:right-left+1;
}
}
leetcode第一天的更多相关文章
- Leetcode 第一遍刷完
2014/10/15 Leetcode第一刷总算结束,时间拖太长了,希望第二遍能快一点,争取一个月能刷完第二遍??哈哈哈哈
- leetcode第一题(easy)
第一题:题目内容 Given an array of integers, return indices of the two numbers such that they add up to a sp ...
- 有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来。
第一题 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数 ...
- leetcode第一刷_Set Matrix Zeroes
这个题乍一看非常easy,实际上还挺有技巧的.我最開始的想法是找一个特殊值标记.遇到一个0,把他所相应的行列中非零的元素标记成这个特殊值.0值保持不变,然后再从头遍历一次,碰到特殊值就转化成0. 问题 ...
- leetcode第一刷_Permutations II
当有反复元素的时候呢? 不用拍脑袋都会想到一种方法,也是全部有反复元素时的通用处理方法,维护一个set,假设这个元素没增加过就增加,增加过了的忽略掉.可是,在这道题上这个通用方法竟然超时了! 怎么办? ...
- leetcode第一刷_Populating Next Right Pointers in Each Node II
很自然的推广,假设去掉全然二叉树的条件呢?由于这个条件不是关键,因此不会影响整体的思路.做法依旧是每次找到一层的起点,然后一层一层的走. 假设是全然二叉树的话,每层的起点就是上一层起点的左孩子,兄弟之 ...
- leetcode第一刷_Merge Intervals
看到这个题我就伤心啊,去微软面试的时候,第一个面试官让我做的题目就是实现集合的交操作,这个集合中的元素就像这里的interval一样.是一段一段的.当时写的那叫一个慘不忍睹.最后果然被拒掉了. .好好 ...
- leetcode第一刷_N-Queens
八皇后问题应该是回溯法的教学典范.在本科的时候,有一门课叫面向对象.最后的附录有这个问题的源码.当时根本不懂编程,照抄下来,执行一下出了结果都非常开心,哎. 皇后们的限制条件是不能同行同列,也不能同对 ...
- leetcode第一刷_Gray Code
说到格雷码,应该没人不知道,详细它有什么用,我还真不是非常清楚,我室友应该是专家.生成的规律不是非常明显,之前看到帖子讲的,这会儿找找不到了.. 思想是这种,假设有n位,在第2^(n-1)个编码以下画 ...
随机推荐
- Oracle实战笔记(第七天)之PL/SQL进阶
一.控制结构 控制结构包括:判断语句(条件分支语句).循环语句.顺序控制语句三种. 1.条件分支语句 if--then:简单条件判断 --编写一个过程,可以输入一个雇员名,如果该雇员名的工资低于200 ...
- nginx添加编译lua模块
一 .安装LuaJit 1.下载LuaJit # wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz 2.编译安装 # tar xzvf LuaJI ...
- python_如何为元组中每个元素命名
学生信息系统: (名字,年龄,性别,邮箱地址) 为了减少存储开支,每个学生的信息都以一个元组形式存放 如: ('tom', 18,'male','tom@qq.com' ) ('jom', 18,'m ...
- Netty初探
匠心零度 转载请注明原创出处,谢谢! 说在前面 为什么我们需要学习netty?谈谈自己的看法,由于本人水平有限,如果有那里不对,希望各位大佬积极指出,欢迎在留言区进行评论交流.探讨. 由于移动互联网的 ...
- CentOS 通过yum来升级php到php5.6
在文章中,我们将展示在centOS系统下如果将php升级到5.6,之前通过yum来安装lamp环境,直接升级的话,提示没有更新包,也就是说默认情况下php5.3.3是最新 1.查看已经安装的php版本 ...
- 【转】shell脚本实现多台服务器自动巡检--可参考学习
shell脚本实现多台服务器自动巡检 摘要: 运维服务一个项目二十多台(或者多台)服务器,每天要做服务器的性能巡检工作是查看服务器的CPU.内存.磁盘空间是否在正常值范围内.像 ...
- redis动态配置
Config get CONFIG GET parameter CONFIG GET 命令用于取得运行中的 Redis 服务器的配置参数(configuration parameters),在 Red ...
- Array.prototype鲜为人知的事实
// constructor 属性是每个具有原型的对象的原型成员. // 这包括除 Global 和 Math 对象之外的所有内部 JavaScript 对象. // constructor 属性包含 ...
- PHP操作Memcached的方法汇总
memcached非关系型数据库安装.php中的memcache的扩展安装.以及php中的memcached的扩展安装可以参考: http://www.cnblogs.com/phpstudy2015 ...
- mkdir -p 参数的使用
ssh root@%s -o ConnectTimeout=2 "ssh root@%s ConnectTimeout=2 "if [ ! -d /root/scripts ]; ...