草庐IT

LeetCode_day

全部标签

算法训练 Day 2 | 数组:977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II

1.有序数组的平方977.有序数组的平方第一想法:暴力破解看完题解想法:朝着双指针方向想遇到困难:用双指针的话,一开始想到两边指针往中间靠,逐个将最大值赋给结果数组。和题解不同的是,循环条件我写了 while(left!=right){...},相比于题解的 while(left,我需要在后面单独为第一个元素赋值(因为没有cover到最后一个元素就跳出循环了)判断条件中,对于nums[left]==nums[right]这种情况,一开始的想法是两头同时逼近与赋值。但是在最后两个元素相同时,此想法报错(例如:[-1,0,0,2])。因此左右指针相等时,可以将其归到两边指针中的一边执行。publi

算法训练 Day 2 | 数组:977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II

1.有序数组的平方977.有序数组的平方第一想法:暴力破解看完题解想法:朝着双指针方向想遇到困难:用双指针的话,一开始想到两边指针往中间靠,逐个将最大值赋给结果数组。和题解不同的是,循环条件我写了 while(left!=right){...},相比于题解的 while(left,我需要在后面单独为第一个元素赋值(因为没有cover到最后一个元素就跳出循环了)判断条件中,对于nums[left]==nums[right]这种情况,一开始的想法是两头同时逼近与赋值。但是在最后两个元素相同时,此想法报错(例如:[-1,0,0,2])。因此左右指针相等时,可以将其归到两边指针中的一边执行。publi

LeetCode[547]省份数量

难度:中等题目:有n个城市,其中一些彼此相连,另一些没有相连。如果城市a与城市b直接相连,且城市b与城市c直接相连,那么城市a与城市c间接相连。省份是一组直接或间接相连的城市,组内不含其他没有相连的城市。给你一个nxn的矩阵isConnected,其中isConnected[i][j]=1表示第i个城市和第j个城市直接相连,而isConnected[i][j]=0表示二者不直接相连。返回矩阵中省份的数量。示例1:输入:isConnected=[[1,1,0],[1,1,0],[0,0,1]]输出:2示例2:输入:isConnected=[[1,0,0],[0,1,0],[0,0,1]]输出:3

LeetCode[547]省份数量

难度:中等题目:有n个城市,其中一些彼此相连,另一些没有相连。如果城市a与城市b直接相连,且城市b与城市c直接相连,那么城市a与城市c间接相连。省份是一组直接或间接相连的城市,组内不含其他没有相连的城市。给你一个nxn的矩阵isConnected,其中isConnected[i][j]=1表示第i个城市和第j个城市直接相连,而isConnected[i][j]=0表示二者不直接相连。返回矩阵中省份的数量。示例1:输入:isConnected=[[1,1,0],[1,1,0],[0,0,1]]输出:2示例2:输入:isConnected=[[1,0,0],[0,1,0],[0,0,1]]输出:3

leetcode每日一题:134. 加油站

系列:贪心算法语言:java题目来源:Leetcode134.加油站题目在一条环路上有n个加油站,其中第i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第i个加油站开往第i+1个加油站需要消耗汽油cost[i]升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组gas和cost,如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回-1。如果存在解,则保证它是唯一的。示例1:输入:gas=[1,2,3,4,5],cost=[3,4,5,1,2]输出:3解释:从3号加油站(索引为3处)出发,可获得4升汽油。此时油箱有=0+4=4升汽油开往4号加油站,此时油箱有4-

leetcode每日一题:134. 加油站

系列:贪心算法语言:java题目来源:Leetcode134.加油站题目在一条环路上有n个加油站,其中第i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第i个加油站开往第i+1个加油站需要消耗汽油cost[i]升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组gas和cost,如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回-1。如果存在解,则保证它是唯一的。示例1:输入:gas=[1,2,3,4,5],cost=[3,4,5,1,2]输出:3解释:从3号加油站(索引为3处)出发,可获得4升汽油。此时油箱有=0+4=4升汽油开往4号加油站,此时油箱有4-

【java】笔试强训Day2【​倒置字符串​与排序子序列】

目录⛳选择题1.A派生出子类B,B派生出子类C,并且在java源代码有如下声明:2.下面代码将输出什么内容:(    )3.阅读如下代码。请问,对语句行test.hello().描述正确的有(    )4.在使用super和this关键字时,以下描述正确的是(    )5.如下代码的结果是什么? (    )6.如下代码的输出结果是什么?(    )7.下列哪一种叙述是正确的(    )8.下列说法正确的有:(    )9.选项中哪一行代码可以替换//addcodehere而不产生编译错误10.在使用interface声明一个外部接口时,只可以使用(   )修饰符修饰该接口。🔥编程题1.倒置字

【java】笔试强训Day2【​倒置字符串​与排序子序列】

目录⛳选择题1.A派生出子类B,B派生出子类C,并且在java源代码有如下声明:2.下面代码将输出什么内容:(    )3.阅读如下代码。请问,对语句行test.hello().描述正确的有(    )4.在使用super和this关键字时,以下描述正确的是(    )5.如下代码的结果是什么? (    )6.如下代码的输出结果是什么?(    )7.下列哪一种叙述是正确的(    )8.下列说法正确的有:(    )9.选项中哪一行代码可以替换//addcodehere而不产生编译错误10.在使用interface声明一个外部接口时,只可以使用(   )修饰符修饰该接口。🔥编程题1.倒置字

【Leetcode】移除链表元素 链表的中间节点 链表中倒数第k个节点

目录一.【Leetcode203】移除链表元素1.链接2.题目再现 A.双指针法B.类尾删法C.哨兵位二.【Leetcode876】链表的中间节点1.链接:链表的中间节点2.题目再现3.解法:快慢指针三.链表中倒数第k个节点1.链接:链表中倒数第k个节点2.题目再现3.解法:快慢指针一.【Leetcode203】移除链表元素1.链接移除链表元素2.题目再现 A.双指针法1.创建一个指针cur=head 和一个指针 pre=NULL;  2.用cur->val与val比较,如果不相等则把cur赋给pre使cur指向下一个节点,即  cur=cur->next;3.如果相等则使pre的next指向

【Leetcode】移除链表元素 链表的中间节点 链表中倒数第k个节点

目录一.【Leetcode203】移除链表元素1.链接2.题目再现 A.双指针法B.类尾删法C.哨兵位二.【Leetcode876】链表的中间节点1.链接:链表的中间节点2.题目再现3.解法:快慢指针三.链表中倒数第k个节点1.链接:链表中倒数第k个节点2.题目再现3.解法:快慢指针一.【Leetcode203】移除链表元素1.链接移除链表元素2.题目再现 A.双指针法1.创建一个指针cur=head 和一个指针 pre=NULL;  2.用cur->val与val比较,如果不相等则把cur赋给pre使cur指向下一个节点,即  cur=cur->next;3.如果相等则使pre的next指向