- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 在项目中static常出现的地方
成员变量被声明为私有的,它们只能通过公共的Getter和Setter方法访问和修改。这样,可以确保对象的数据在被外部代码访问和修改时受到控制和保护。这提供了一种封装的机制,防止外部代码直接访问和修改对象的状态。这有助于保护对象的数据完整性,防止不合法的访问和修改。这降低了类的使用者与类的实现之间的耦合度,使代码更加模块化和易于维护。修饰方法时,通常是为了实现一些辅助功能,这些功能不依赖于类的实例状态,因此可以声明为静态方法并且不希望被外部直接访问。的逻辑封装在类内部,同时提供了一个简单的接口供外部使用。
2023-09-03 19:00:59
57
原创 2023届暑期实习华为面试手撕题
某山区有连续的山峰,现在需要假设一条高压电线通过这个地区,假设山峰的高度是一个正整数数组int []height,假设在数组中的山峰是等距的,距离为100米,两个高压电线塔之间的距离不能超过1000米,电线塔的高度为正整数变量towerH,请您算出要架设高压电线穿越该地区至少需要设多少个电线塔?注意:1、两个电线塔之间的山峰高度不能高于两个电线塔中较低的(塔+所在山峰)的高度。2、开始和结尾的山峰都要假设电线塔,也要算在总数中。思路:回溯的想法,开始的塔确定了,现在要找第二个塔在那个位置,在最后一
2022-04-22 11:33:49
576
原创 代码搬运工之二叉树的遍历
熟读力扣300题,不会写题也会敲。二叉树的题目非常之多,人生是有限的,题目是无限的。二叉树的遍历先序(根、左、右)、中序(左、根、右)、后序(左、右、根)递归的方式很简单。 //先序遍历 public static void preOrderTraveral(TreeNode root){ if(root == null) return; System.out.println(root.val); preOrderTraveral(r
2022-04-17 22:17:16
316
原创 代码搬运工之二叉树
熟读力扣300题,不会写题也会敲。二叉树是一种数据结构,每个节点都有左右两个孩子。在树这种结构中,可以递归思想很重要。比如我想知道我孩子、孙子中谁用我的号打王者。我只要问一下左孩子和右孩子,然后左孩子问它的左孩子和右孩子,右孩子也是这种操作。最后我会收到左孩子和左孩子的反馈。在刷leetcode树这一章的时候,有时候会很懵逼,因为人脑递归和程序真实的递归有时候不同,这里就需要进行debug,debug对了解递归有很大帮助。首先要构建出来一棵二叉树:public class TreeNode {
2022-04-17 16:08:38
407
原创 代码搬运工之面试常撕KMP
kmp首先说一说,最长公共前后缀比如abc,前缀不包含最后一个字符的所有以第一个字符开头的连续子串,前缀a,ab;同理后缀,c,bc;下面就是字符串的next数组,对应的值就是公共前后缀长度。eg:abcabc前缀:a,ab,abc,abca,abcab后缀:c,bc,abc,cabc,bcabc所以最长公共前后缀的长度是3。上面是手动推出来的3,那用代码怎么写呢j:保存最长公共前后缀的长度i:当前字符串的下标s.charAt(i)==s.charAt(j)第一种,如果当前字符
2022-04-16 22:39:03
461
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人