0


[Java刷算法]牛客—剑指offer第一天

  • 🧛‍♂️个人主页:杯咖啡
  • 💡进步是今天的活动,明天的保证!
  • ✨目前正在学习:SSM框架,算法刷题
  • 🙌牛客网,刷算法过面试的神级网站,用牛客你也牛。 👉免费注册和我一起学习刷题👈
  • 🐳希望大家多多支持🥰一起进步呀!
  • 😎The man who fears losing has already lost. 怕输的人已经输了。 - 《权力的游戏》

🎈前言

很多小伙伴,对于自己以后的路很迷茫,不论是考研或者面试,都充满了不确定性

小编在学校担任学生会科技创新部副部长,经历和组织了很多次的面试,总结出:实力固然最重要,但是面试也是要深入准备和了解的,可不管怎么样,不论早晚都是要 面试 的,所以为了解决我们的迷茫和内心的恐惧,小编决定今天开始深入了解面试——刷面试题

一次偶然的机会,我了解到牛客对于面试拥有很丰富的面试题库,并且很多大厂也是使用的牛客的源题库。 抱着试试的态度我开始了刷 《剑指offer》

以后的每天小编都会刷三题,并且写成博客记录知识和心情,感兴趣的小伙伴可以和我一起刷,一起了解面试,一起打破迷茫,坚定远方。

👉免费注册陪伴小编30天刷完《剑指offer》👈

✨今日三剑

  • JZ3 数组中重复的数字
  • JZ4 二维数组中的查找
  • JZ5 替换空格

文章目录


JZ3 数组中重复的数字

题目描述

在这里插入图片描述

思路详解

本题的思路比较简单,首先将这个数组排序,遍历数组,找到当前的和前一个相同的直接输出就好了。没找到输出-1.
注意:这个方法要注意循环的时候下标要从1开始哦,不然会报数组下标异常滴。

代码与结果

importjava.util.*;publicclassSolution{/**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型一维数组 
     * @return int整型
     */publicint duplicate (int[] numbers){// write code hereArrays.sort(numbers);for(int i =1; i < numbers.length; i++)if(numbers[i]== numbers[i -1])return numbers[i];return-1;}}

在这里插入图片描述

JZ4 二维数组中的查找

题目描述

在这里插入图片描述

思路详解

这个题目有点难度。仔细读题发现了一个重要条件,这个二位数组行和列都是递增的,也就意味着左上最小,右下最大,并且左下元素大于它上方的元素,小于它右方的元素,右上元素与之相反。
根据这个规律,我们可以从左下出发分情况往上或者右进行找,同时要先判断一下特殊情况哦。
具体细节上代码。

代码与结果

publicclassSolution{publicbooleanFind(int target,int[][] array){//优先判断特殊if(array.length ==0)returnfalse;int n = array.length;if(array[0].length ==0)returnfalse;int m = array[0].length;//从最左下角的元素开始往左或往上for(int i = n -1, j =0; i >=0&& j < m;){//元素较大,往上走if(array[i][j]> target)  
                i--;//元素较小,往右走elseif(array[i][j]< target)
                j++;elsereturntrue;}returnfalse;}}

在这里插入图片描述

JZ5 替换空格

题目描述

在这里插入图片描述

思路详解

本题的替换空格,思路还是比较简单的。
我们遍历字符串把它存到一个临时字符数组里,在遍历的时候直接判断是否为空,如果是直接加进‘%20’三个字符,最后输出即可。
注意:临时数组的大小,设置为字符串长度的3倍,刚刚好,假设该字符串全是空格,也可以满足。同时也要注意字符串的相关方法的运用哦。

代码与结果

importjava.util.*;publicclassSolution{/**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @return string字符串
     */publicStringreplaceSpace(String s){int length = s.length();char[] array =newchar[length *3];int index =0;for(int i =0; i < length; i++){char c = s.charAt(i);if(c ==' '){
            array[index++]='%';
            array[index++]='2';
            array[index++]='0';}else{
            array[index++]= c;}}String newStr =newString(array,0, index);return newStr;}}

在这里插入图片描述


✨总结

到这里今日的三剑就完成了,题目不难,但难在坚持,和小编一起互相鼓励,互相监督,共同30太难完成《剑指offer》吧。小编在牛客等你,关注《牛客—剑指offer》专栏,和编一起加油!!!

      原
     
     
      创
     
     
      不
     
     
      易
     
     
      ,
     
     
      还
     
     
      希
     
     
      望
     
     
      各
     
     
      位
     
     
      大
     
     
      佬
     
     
      支
     
     
      持
     
     
      一
     
     
      下
     
    
   
   
    \textcolor{blue}{原创不易,还希望各位大佬支持一下}
   
  
 原创不易,还希望各位大佬支持一下


 
  
   
    
     
      点
     
     
      赞
     
     
      ,
     
     
      你
     
     
      的
     
     
      认
     
     
      可
     
     
      是
     
     
      我
     
     
      创
     
     
      作
     
     
      的
     
     
      动
     
     
      力
     
     
      !
     
    
   
   
    \textcolor{green}{点赞,你的认可是我创作的动力!}
   
  
 点赞,你的认可是我创作的动力!


 
  
   
    
     
      收
     
     
      藏
     
     
      ,
     
     
      你
     
     
      的
     
     
      青
     
     
      睐
     
     
      是
     
     
      我
     
     
      努
     
     
      力
     
     
      的
     
     
      方
     
     
      向
     
     
      !
     
    
   
   
    \textcolor{green}{收藏,你的青睐是我努力的方向!}
   
  
 收藏,你的青睐是我努力的方向!


 
  
   
    
     
      评
     
     
      论
     
     
      ,
     
     
      你
     
     
      的
     
     
      意
     
     
      见
     
     
      是
     
     
      我
     
     
      进
     
     
      步
     
     
      的
     
     
      财
     
     
      富
     
     
      !
     
    
   
   
    \textcolor{green}{评论,你的意见是我进步的财富!}
   
  
 评论,你的意见是我进步的财富!

本文转载自: https://blog.csdn.net/muzi_longren/article/details/125726527
版权归原作者 风铃听雨~ 所有, 如有侵权,请联系我们删除。

“[Java刷算法]牛客&mdash;剑指offer第一天”的评论:

还没有评论