翟喜洋
码龄5年
关注
提问 私信
  • 博客:35,704
    35,704
    总访问量
  • 58
    原创
  • 40,477
    排名
  • 607
    粉丝
  • 6
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:陕西省
  • 加入CSDN时间: 2019-09-28
博客简介:

weixin_45698983的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    3
    当前总分
    492
    当月
    0
个人成就
  • 获得83次点赞
  • 内容获得19次评论
  • 获得73次收藏
创作历程
  • 3篇
    2024年
  • 24篇
    2023年
  • 31篇
    2022年
成就勋章
TA的专栏
  • 算法题
    1篇
  • JavaEE
    2篇
  • 数据结构
    6篇
  • Java知识点
    6篇
  • JavaSE
    12篇
  • 软件安装
    2篇
  • C语言习题
    17篇
  • C语言_进阶
    1篇
  • C语言_初阶
    10篇
兴趣领域 设置
  • 编程语言
    javac++c语言
  • 数据结构与算法
    算法数据结构
  • 人工智能
    计算机视觉
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

双指针算法

因此只需要将每个数字看作⼀个节点, 数字变换的过程看作从⼀个节点移动到另⼀个节点的过程。定义快慢指针,慢指针每次移动一步,快指针每次移动两步。判断快慢指针相遇时所指向的数是否为 1,如果是 1,则是快乐数,否则,不是。此时,将最后一个元素置为 0,cur 向前移动一个位置,dest 向前移动两个位置。如果不是 0,则 dest 先向后移动一位,再交换 cur 和 dest 指向的元素;两边的指针向中间移动,则(right - left)一定是单调递减的。【就地操作】【双指针算法】【单调性 + 双指针】
原创
发布博客 2024.11.04 ·
762 阅读 ·
30 点赞 ·
0 评论 ·
8 收藏

计算机的一些基础知识

进程是操作系统进行资源分配的最小单位,这意味着各个进程互相之间是无法感受到对方存在的,这就是操作系统抽象出进程这一概念的初衷,这样便带来了进程之间互相具备**“隔离性(Isolation)”**。但现代的应用,要完成一个复杂的业务需求,往往无法通过一个进程独立完成,总是需要进程和进程进行配合地达到应用的目的,如此,进程之间就需要有进行“信息交换”的需求。一个逻辑处理器,并不是一次就把一个进程执行完,而是一个进程执行一会儿就休息一会儿,再去执行另一个进程,不停的轮换执行。
原创
发布博客 2024.11.03 ·
1043 阅读 ·
17 点赞 ·
0 评论 ·
13 收藏

(Java1.8)创建SpringBoot项目

jdk1.8创建SpringBoot项目
原创
发布博客 2024.08.06 ·
615 阅读 ·
6 点赞 ·
0 评论 ·
8 收藏

第六章 LinkedList与链表

LinkedList 的官方文档LinkedList的底层是双向链表结构,由于链表没有将元素存储在连续的空间中,元素存储在单独的节点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。LinkedList实现了List接口;LinkedList的底层使用了双向链表;LinkedList没有实现RandomAccess接口,因此LinkedList不支持随机访问;LinkedList的任意位置插入和删除元素时效率比较高,时间复杂度为O(1);
原创
发布博客 2023.05.26 ·
815 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第五章 ArrayList与顺序表

在集合框架中,ArrayList是一个普通的类,实现了List接口,具体框架图如下:说明ArrayList是以泛型方式实现的,使用时必须要先实例化;ArrayList实现了RandomAccess接口,表明ArrayList支持随机访问;ArrayList实现了Cloneable接口,表明ArrayList是可以clone的;ArrayList实现了Serializable接口,表明ArrayList是支持序列化的;和Vector不同,ArrayList不是线程安全的。
原创
发布博客 2023.05.26 ·
1095 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

向上转移和向下转型

向上转型其中,fatherClass 是父类名称或接口名称,obj 是创建的对象,sonClass 是子类名称。向上转型就是把子类对象直接赋给父类引用,不用强制转换。使用向上转型可以调用父类类型中的所有成员,不能调用子类类型中特有成员,最终运行效果看子类的具体实现。向下转型其中,fatherClass 是父类名称,obj 是创建的对象,sonClass 是子类名称。
原创
发布博客 2023.05.15 ·
418 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

StringBuilder和StringBuffer

由于String的不可更改特性,为了方便字符串的修改,Java中又提供StringBuilder和StringBuffer类。这两个类大部分功能是相同的。// 追加:即尾插-->字符、字符串、整形数字 sb1 . append(' ');// 获取0号位上的字符:h System . out . println(sb1 . length());// 获取字符串的有效长度:14 System . out . println(sb1 . capacity());
原创
发布博客 2023.05.15 ·
586 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

抽象类和接口的区别

如之前写的 Animal 例子,此处的 Animal 中包含一个 name 这样的属性, 这个属性在任何子类中都是存在的,因此,此处的Animal 只能作为一个抽象类,而不应该成为一个接口。抽象类存在的意义是为了让编译器更好的校验,像 Animal 这样的类我们并不会直接使用,而是使用它的子类。抽象类中可以包含普通方法和普通字段,这样的普通方法和字段可以被子类直接使用(不必重写);抽象类和接口都是 Java 中多态的常见使用方式。接口中不能包含普通方法,子类必须重写所有的抽象方法。
原创
发布博客 2023.05.15 ·
75 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

深拷贝和浅拷贝

如上代码,我们可以看到,通过clone,我们只是拷贝了 Student 对象,但是 Student 对象中的 Money 对象并没有拷贝。通过 student2 这个引用修改了 money 的值后,student2 这个引用访问 money 的时候,值也发生了改变。创建一个新对象/新数组,将原对象/原数组的各项属性的“值”(数组的所有元素)拷贝过来,是“值”而不是“引用”。(修改新对象/新数组。将原对象/原数组的引用直接赋给新对象/新数组,新对象/新数组只是原对象/原数组的一个引用。(修改新对象/新数组。
原创
发布博客 2023.05.15 ·
80 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

重写和重载的区别

在自然语言中,一个词语如果有多重含义,那么就说该词语被重载了,具体代表什么含义需要结合具体的场景。在Java中方法也是可以重载的。最好的方式是:重新定义一个新的类,来重复利用其中共性的内容,并且添加或者改动新的内容。重写是子类对父类非静态、非private修饰、非final修饰、非构造方法等的实现过程进行重新编写,重写的好处在于子类可以根据需要,定义特定于自己的行为,也就是说子类能够根据需要实现父类的方法。方法重载是一个类的多态性表现,而方法重写是子类与父类的一种多态性表现。
原创
发布博客 2023.05.15 ·
620 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第十一章 异常

Java 中虽然已经内置了丰富的异常类,但是并不能完全表示实际开发中所遇到的一些异常,此时就需要维护符合我们实际情况的异常结构。例如, 我们实现一个用户登陆功能if(!} if(!} System . out . println("登陆成功");} }此时我们在处理用户名密码错误的时候可能就需要抛出两种异常。我们可以基于已有的异常类进行扩展(继承),创建和我们业务相关的异常类。自定义异常类,然后继承自Exception 或者 RunTimeException。
原创
发布博客 2023.05.14 ·
640 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第十章 String 类

由于String的不可更改特性,为了方便字符串的修改,Java中又提供StringBuilder和StringBuffer类。这两个类大部分功能是相同的。**方法 **说明str)在尾部追加,相当于String的+=,可以追加:boolean、char、char[]、double、float、int、long、Object、String、StringBuff的变量获取index位置的字符获取字符串的长度获取底层保存字符串空间总的大小扩容char ch)将index位置的字符设置为ch。
原创
发布博客 2023.05.14 ·
809 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第四章 List接口

在集合框架中,List是一个接口,继承自Collection。Collection也是一个接口,该接口中规范了后序容器中常用的一些方法,具体如下所示:Iterable也是一个接口,表示实现该接口的类是可以逐个元素进行遍历的,具体如下:站在数据结构的角度来看,List就是一个线性表,即n个具有相同类型元素的有限序列,在该序列上可以执行增删改查以及变量等操作。List中提供了好的方法,具体如下:**方法 **解释尾插 e将 e 插入到 index 位置尾插 c 中的元素。
原创
发布博客 2023.05.13 ·
830 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第三章 包装类&泛型

JAVA 推出泛型以前,程序员可以构建一个元素类型为Object的集合,该集合能够存储任意的数据类型对象,而在使用该集合的过程中,需要程序员明确知道存储每个元素的数据类型,否则很容易引发异常。方法限定符 < 类型形参列表 > 返回值类型 方法名称(形参列表) {. . . }
原创
发布博客 2023.05.13 ·
517 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第二章 时间和空间复杂度

一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。实例4基本操作执行最好N次,最坏执行了(N*(N-1))/2次,通过推导大O阶方法+时间复杂度一般看最坏,时间。时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间。实例1基本操作执行了2N+10次,通过推导大O阶方法知道,时间复杂度为 O(N)。实例2基本操作执行了M+N次,有两个未知数M和N,时间复杂度为 O(N+M)实例6执行了N次,每次执行1此,时间复杂度为O(N)。
原创
发布博客 2023.05.13 ·
576 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

第一章 集合框架

官方教程Java 集合框架,又被称为容器container,是定义在java.util包下的一组接口 interfaces和其实现类 classes。其主要表现为将多个元素 element 置于一个单元中,用于对这些元素进行快速、便捷的存储 store 、检索 retrieve 、管理 manipulate ,即平时我们俗称的增删查改CRUD。例如,一副扑克牌(一组牌的集合)、一个邮箱(一组邮件的集合)、一个通讯录(一组姓名和电话的映射关系)等等。
原创
发布博客 2023.05.13 ·
638 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

this和super

this引用指向当前对象(成员方法运行时调用该成员方法的对象),在成员方法中所有成员变量的操作,都是通过该引用去访问。只不过所有的操作对用户是透明的,即用户不需要来传递,编译器自动完成。this引用的是调用成员方法的对象。
原创
发布博客 2023.05.10 ·
671 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第九章 抽象类和接口

包含抽象方法的类我们称为。
原创
发布博客 2023.05.05 ·
827 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JDK、JRE、JVM之间的关系?

Java程序运行需要经过编译,运行两个阶段。● 编译:javac 命令。● 运行:java 命令。
原创
发布博客 2023.04.28 ·
137 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第八章 继承和多态

成员方法没有同名时,在子类方法中或者通过子类对象访问方法时,则优先访问自己的,自己没有时再到父类中找,如果父类中也没有则报错。
原创
发布博客 2023.04.28 ·
1131 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多