Leetcode面试经典150题(一)

27. 移除元素

java 复制代码
 public int removeElement(int[] nums, int val) {
     int res = 0;
     for (int i = 0; i < nums.length; i++) {
         if(nums[i]!=val){
             nums[res++] = nums[i];
         }
     }
     return res;
 }

26. 删除有序数组中的重复项

java 复制代码
 class Solution {
     public int removeDuplicates(int[] nums) {
         int j = 0;
         for(int i=0;i<nums.length;i++){
             if(nums[i]!=nums[j]){
                 nums[++j] = nums[i];
             }
         }
         return j+1;
     }
 }

80. 删除有序数组中的重复项 II

java 复制代码
 class Solution {
     public int removeDuplicates(int[] nums) {
         int n = 2;
         int i = n,j=n;
         while(j<nums.length){
             if(nums[j]!=nums[i-n]){
                 nums[i++] = nums[j];
             }
             j++;
         }
         return i;
     }
 }

11. 盛最多水的容器

java 复制代码
 class Solution {
    public int maxArea(int[] height) {
         int l = 0,r = height.length-1;
         int res = 0;
         while(l<r){
             int t = Math.min(height[l],height[r]) * (r-l);
             res = Math.max(res,t);
             if(height[l]<=height[r]) {
                 l++;
             }else{
                 r--;
             }
         }
         return res;
     }
 }

189. 轮转数组

复制代码
 
java 复制代码
class Solution {
     public void rotate(int[] nums, int k) {
         int[] arr = new int[nums.length];
         for(int i=0;i<nums.length;i++){
             arr[(i+k)%nums.length] = nums[i];
         }
         for (int i = 0; i < nums.length; i++) {
             nums[i] = arr[i];
         }
     }
 }
相关推荐
浮生如梦_1 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
励志成为嵌入式工程师3 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
师太,答应老衲吧3 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
捕鲸叉3 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer3 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
wheeldown4 小时前
【数据结构】选择排序
数据结构·算法·排序算法
观音山保我别报错5 小时前
C语言扫雷小游戏
c语言·开发语言·算法
TangKenny6 小时前
计算网络信号
java·算法·华为
景鹤6 小时前
【算法】递归+深搜:814.二叉树剪枝
算法
iiFrankie6 小时前
SCNU习题 总结与复习
算法