草庐IT

leedcode刷题(4)

全部标签

牛客刷题——剑指offer(第7期)

💟💟前言🥇作者简介:友友们大家好,我是你们的小王同学😗😗​🥈个人主页:小王同学🚗​🥉系列专栏:牛客刷题专栏📖​📑推荐一款非常火的面试、刷题神器👉牛客网觉得小王写的不错的话麻烦动动小手点赞👍收藏⭐评论📄今天给大家带来的刷题系列是:​剑指offer链接:👉剑指offer​里面有非常多的题库跟面经知识真的非常良心了!!JZ33二叉搜索树的后序遍历序列🎈题目描述🎈解题思路🎈这道题目是输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同这道题就是中序跟后序遍历满足栈的压入弹出序列关系如果把中序序列当做栈的压入序列

牛客刷题——剑指offer(第7期)

💟💟前言🥇作者简介:友友们大家好,我是你们的小王同学😗😗​🥈个人主页:小王同学🚗​🥉系列专栏:牛客刷题专栏📖​📑推荐一款非常火的面试、刷题神器👉牛客网觉得小王写的不错的话麻烦动动小手点赞👍收藏⭐评论📄今天给大家带来的刷题系列是:​剑指offer链接:👉剑指offer​里面有非常多的题库跟面经知识真的非常良心了!!JZ33二叉搜索树的后序遍历序列🎈题目描述🎈解题思路🎈这道题目是输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同这道题就是中序跟后序遍历满足栈的压入弹出序列关系如果把中序序列当做栈的压入序列

2023华为机考刷题指南:八周机考速通车

2023.3.27更新:24届的实习开了,强烈建议大家想去华为的话,参加一下实习,实习的机考是可以在秋招的时候用的,相当于有两次机考机会,另外实习机考难度也会稍微简单一点,其他一些对求职比较有用的平台,力扣、牛客都不用说了,另外还有代码随线录、脉脉对扩大自己的信息面什么的都是很有帮助的。2023.1.13更新:拿到了华子offer,看到这个贴子一直有人收藏,最近有空完善一下,主要是把深搜的几道题的题号添上。华子的机考不算简单,挺难的,还是得好好准备一下,而且技术面必撕题,所以刷题是绝对有必要的。原答案:华为机考准备,适合新手,大佬请略过~轻喷。先说下华为实习或秋招的软件机考类型,总共3道题,分

2023华为机考刷题指南:八周机考速通车

2023.3.27更新:24届的实习开了,强烈建议大家想去华为的话,参加一下实习,实习的机考是可以在秋招的时候用的,相当于有两次机考机会,另外实习机考难度也会稍微简单一点,其他一些对求职比较有用的平台,力扣、牛客都不用说了,另外还有代码随线录、脉脉对扩大自己的信息面什么的都是很有帮助的。2023.1.13更新:拿到了华子offer,看到这个贴子一直有人收藏,最近有空完善一下,主要是把深搜的几道题的题号添上。华子的机考不算简单,挺难的,还是得好好准备一下,而且技术面必撕题,所以刷题是绝对有必要的。原答案:华为机考准备,适合新手,大佬请略过~轻喷。先说下华为实习或秋招的软件机考类型,总共3道题,分

LeetCode刷题第一周

数组:内存空间连续,数据类型统一,下标从0开始二分查找704classSolution{publicintsearch(int[]nums,inttarget){//方法一:暴力解法//for(inti=0;inums[nums.length-1]){return-1;}intleft=0;intright=nums.length-1;//右闭区间intmid=(left+right)>>1;while(left>1;}return-1;}//publicintbinarySearch(int[]nums,inttarget,intstart,intend){//intmid=(start+e

LeetCode刷题第一周

数组:内存空间连续,数据类型统一,下标从0开始二分查找704classSolution{publicintsearch(int[]nums,inttarget){//方法一:暴力解法//for(inti=0;inums[nums.length-1]){return-1;}intleft=0;intright=nums.length-1;//右闭区间intmid=(left+right)>>1;while(left>1;}return-1;}//publicintbinarySearch(int[]nums,inttarget,intstart,intend){//intmid=(start+e

Leetcode刷题第五周

二叉树:种类:满二叉树、完全二叉树、二叉搜索树、平衡二叉搜索树存储方式:链式存储、线式存储(顺序存储)二叉数遍历:深度优先搜索(前序、中序、后序):使用递归实现(实际用栈来实现)、迭代法(非递归的方式、栈),广度优先搜索(层序遍历):用队列递归三步走写法:1、确定递归函数的参数和返回值。2、确定终止条件。3、确定单层递归的逻辑。144、二叉树的前序遍历/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){t

Leetcode刷题第五周

二叉树:种类:满二叉树、完全二叉树、二叉搜索树、平衡二叉搜索树存储方式:链式存储、线式存储(顺序存储)二叉数遍历:深度优先搜索(前序、中序、后序):使用递归实现(实际用栈来实现)、迭代法(非递归的方式、栈),广度优先搜索(层序遍历):用队列递归三步走写法:1、确定递归函数的参数和返回值。2、确定终止条件。3、确定单层递归的逻辑。144、二叉树的前序遍历/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){t

Leetcode刷题第六周

回溯算法回溯的本质是穷举,所以不是高效的算法回溯法,一般可以解决如下几种问题:组合问题:N个数里面按一定规则找出k个数的集合注意区分一个集合取组合和多个集合取组合的细节。切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式棋盘问题:N皇后,解数独等等需要注意问题是有一个解还是多个解,一个解的需要返回值,一旦找到解就逐级返回,多个解的不需要返回值因为回溯算法需要的参数可不像二叉树递归的时候那么容易一次性确定下来,所以一般是先写逻辑,然后需要什么参数,就填什么参数。从图中看出for循环可以理解是横向遍历,bac

Leetcode刷题第六周

回溯算法回溯的本质是穷举,所以不是高效的算法回溯法,一般可以解决如下几种问题:组合问题:N个数里面按一定规则找出k个数的集合注意区分一个集合取组合和多个集合取组合的细节。切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式棋盘问题:N皇后,解数独等等需要注意问题是有一个解还是多个解,一个解的需要返回值,一旦找到解就逐级返回,多个解的不需要返回值因为回溯算法需要的参数可不像二叉树递归的时候那么容易一次性确定下来,所以一般是先写逻辑,然后需要什么参数,就填什么参数。从图中看出for循环可以理解是横向遍历,bac