自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 属性注入、构造方法注入、Setter注入的区别

属性注入、构造方法注入、Setter注入的区别

2022-12-25 17:19:12 931 1

原创 【前后端交互与HTTP协议】(HTTP协议、本地存储、Ajax&Fetch 与跨域请求)

每一次的前后端通信,前端需要主动向后端发出请求,后端接收到前端的请求后,可以给出响应(HTTP是一个请求-响应协议)

2022-07-24 17:00:47 1961

原创 【ES6】ES6超详讲解(@_@;)

JavaScript(浏览器端) = ECMAScript(语法 + API) + DOM + BOM

2022-07-08 11:57:43 1530

原创 【JavaScript】 一万字 JavaScript 笔记(详细讲解 + 代码演示 + 图解)

javascript 一万字学习笔记,一起学习吧

2022-07-01 10:16:32 1114

原创 【leetcode刷题】82. 删除排序链表中的重复元素 II

存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中没有重复出现的数字。返回同样按升序排列的结果链表。

2022-05-28 12:09:10 119

原创 【leetcode刷题】面试题 02.04. 分割链表

希望通过博客和大家相互交流,相互学习,如有错误,请评论区指正给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。

2022-05-08 20:43:13 403

原创 【leetcode刷题】21. 合并两个有序链表

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

2022-04-14 16:28:25 399

原创 【leetcode刷题】203. 移除链表元素

给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val == val的节点,并返回新的头节点。

2022-04-05 11:10:07 854

原创 【leetcode刷题】206. 反转链表

给你单链表的头节点head,请你反转链表,并返回反转后的链表。

2022-03-13 16:32:21 1082

原创 【JavaSE】OJ 必备 String 类(字符串不可变、String类及常用方法)

其实可以看出,String类中的equals是重写了Object中的equals方法,如果没重写的话,默认是调用Object中的equals方法,比较的是两个引用

2022-03-07 12:34:52 1903

原创 【JavaSE】泛型的那些事(泛型考古、泛型擦除、包装类)

泛型(generic type)其本质是将类型参数化,也就是说所操作的**数据类型被指定为一个参数**这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。

2022-03-03 08:01:39 1723

原创 【JavaSE】cloneable接口和深拷贝

在这个过程中,通过arr2来修改第一个下标的值,对arr里面的数值并未产生影响,可以看到通过clone()方法也实现了对数组的拷贝,但其实clone()方法是一个浅拷贝

2022-03-01 07:35:10 420

原创 【JavaSE】异常 超详讲解(编程思想)

异常指的是在程序运行过程中发生的异常事件,通常是由外部问题(如硬件错误、输入错误)所导致的。在Java等面向对象的编程语言中异常属于对象.异常本身是一个对象,产生异常就是产生了一个异常对象...

2022-02-26 15:27:35 1551

原创 【JavaSE】面向对象编程必备技能,你学会了吗(继承、多态、抽象类、接口详解)

当一个大型程序交由数个不同的程序开发人员进行开发时,用到相同的类名是很有可能的,在java程序开发中为了避免上述事件,提供了一个包的概念(package),使用方法很简单,只需要在写的程序第一行使用 package 关键字来声明一个包。

2022-02-23 12:36:26 938

原创 【数据结构】手撕单链表

顺序表在空间利用,系统消耗,插入元素方面都是存在缺陷的。而链表是最常用的动态存储方法,克服了顺序表的缺点。链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储指向下一个结点的引用域链表的结构很多,有以下6种情况,组合起来有8种有头、无头单向、双向循环、非循环在这8种情况中,我们一般重点

2022-01-24 09:25:06 699

原创 【数据结构】手撕顺序表

线性表是最基本、最简单、也是最常用的一种数据结构。线性表*(linear list)*是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列。常见的线性表有顺序表,链表,栈,队列,字符串等注意:这里说的线性表都指的是逻辑结构,也就是他们的逻辑结构是线性的,但物理结构却不一定是线性的。在数据结构逻辑层次上细分,线性表可分为一般线性表和受限线性表。一般线性表也就是我们通常所说的“线性表”,可以自由的删除或添加结点。受限线性表主要包括栈和队列,受限表示对结点的操作受限制二

2022-01-22 09:15:04 637

原创 【JavaSE】类和对象深度解剖(详解 + 代码演示)

类(Class)是面向对象程序设计(OOP,Object-Oriented Programming)实现信息封装的基础。类是一种用户自定义的引用数据类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数,类的实例称为对象

2022-01-18 10:09:36 803

原创 古印度 ⇥⇥ 汉诺塔问题⇨搞不懂?(视图结合深度解剖)

汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘二、问题分析直接拿64个盘子来想,可能会比较难,我们可以先从1个盘子开始看,如下图:一个盘子​A -> C只有一个盘子情况下,我...

2022-01-14 10:02:22 1541 1

原创 【JavaSE】数组超详讲解【一次性 弄懂 数组问题】

这个问题我们应该严谨的来回答,数组对象在 堆 上,但是数组变量arr,arr2,arr3在栈上,这看起来很别扭,但事实就是这样8大基本类型,里面直接存放的就是我们要存的数据,在栈上,但arr属于引用类型,里面存放的是它所指向的对象的地址我们通过以下图来说明

2022-01-09 09:04:58 1973

原创 【JavaSE】玩转Java方法,就该这么学

方法就相当于C语言当中的函数,负责完成某项特定任务,相较于其他代码,具有相对的独立性我们通过如下代码来体验一下 Java 当中的方法public static int max(int x, int y) { return x > y ? x : y;}这就是一个简单的方法,来求两个整型中的较大值在这段代码中,int 是这个方法的返回值类型,max 为方法名,后面括号中为参数列表注意

2022-01-04 09:00:00 1056

原创 【JavaSE】初识Java语言

【JavaSE】初识Java语言 让我们将编程进行到底,Java为什么这么火,第一个Java语言程序,Java为什么可以跨平台运行

2021-12-17 08:36:17 1492

原创 【C 语言】程序环境和预处理(你写的代码究竟遭遇了什么?)

目录​一、程序的翻译环境和执行环境二、编译&&链接1. 预处理2. 编译(狭义的编译)3. 汇编4. 链接注意:三、预处理预定义符号#define1. #define定义标识符2.给类型定义别名3.自定义一些关键字4.通过宏作一些编译开关5.定义一个代码片段已经有函数了,为什么还要有宏来完成类似的效果?宏带来的问题一、程序的翻译环境和执行环境翻译环境: 在这个环境中源代码被转换为可执行的机器指令 执...

2021-11-07 08:50:17 335

原创 【C语言】文件居然还能这样操作 (代码演示 + 详解 + 应用)

这篇博客和大家分享关于C语言文件操作方面的知识,相互交流,共同进步什么是文件?我们前面写的代码里面都在使用 “变量”,或者说在使用内存内存特点容量小,速度块,断电之后数据丢失,比较贵但是内存不能满足我们所有的使用场景。我们在有的时候也希望存储容量大一些,速度稍慢点也没太大关系,希望数据能够持久存储,这个时候我们用到外存,比如存在硬盘里面外存特点容量大,速度慢,断电之后数据仍存在,相比内存便宜一些那么我们如何让数据在外存上存储呢? 关键就是通过文件文件的路...

2021-11-04 10:23:07 2998

原创 【C语言】十大函数超详讲解==>字符串函数&&内存函数 (详细讲解+代码演示+模拟实现)

这篇文章主要介绍一些常用的库函数,如果哪里有问题,欢迎评论区指正前言C语言中的库函数,别人已经写好,我们可以直接拿来用,降低了开发门槛,提高了开发效率这里的这些函数我们不仅要会用,还要知道它的内部是怎么实现的,也要会自己实现它。学习库函数的时候应该要多查官方文档,看文档中对函数的说明,来更好的学习库函数推荐两个C语言在线文档:cplusplus.com - The C++ Resources Networkcppreference.com在学习C语言库函数的时..

2021-11-01 09:05:21 709

原创 【C语言】☀️动态内存管理及相关函数

一、为什么存在动态内存分配之前我们学过的开辟空间的方式就是如下两种:int main(){ int a = 5; char ch = 'b'; int arr[20] = { 0 };}以上的开辟内存的方式都是开辟好内存之后所开辟的内存是固定的,不能改变的,这种开辟方式不够灵活C语言里面的动态开辟内存就解决了这个问题在学习C语言的时候通常大致将内存划分为三部分:栈区,堆区,静态区动态开辟内存就是在栈上面开辟的空间二、动态内存函数malloc和free...

2021-10-23 12:05:32 504

原创 【C语言】☀️自定义类型(结构体+位段+枚举+联合体)【建议收藏】

一、为什么会有结构体呢?我们前面所学到的那些数据类型:char,int,double,还有指针都是不足以去表达对象,如果我们要去表示一个人,能用一个数字去表示吗?肯定是不行的,要知道人是属于复杂对象,不能简单的用某个数来表示,要表示一个人,需要很多方面,比如姓名,性别,年龄等。要表示人,我们就得创造一种复杂类型,C语言里面就有了结构体类型结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型结构体类型也是需要字己创建的二、结构体的声明结构的基础知识结构是一些值的集合..

2021-10-17 10:50:17 1628

原创 【C语言进阶】浮点数在内存中的存储&&从内存中拿出数据(IEEE754标准)

我们在前面也用过一些浮点数了,那么它在内存中到底是怎么存的呢,怎么从内存中拿出来?和整型的存储一样吗?通过这篇文章带你搞懂它目录常见的浮点数:浮点型和整型的存储方式是不一样的怎么存IEEE 754规定:注意:指数E从内存中取出1.E不全为0或不全为12.E全为03.E为全1常见的浮点数:3.14159 1E10(科学计数法) 浮点数家族包括: float、double、long double 类型。 浮点数表示的范围我们可以在编译器...

2021-10-14 07:33:27 636

原创 【C语言进阶】☀️数据类型&&整型在内存中的存储

目录​一、数据类型介绍二、类型的意义三、类型的基本归类、整型家族浮点数家族构造类型(自定义类型)指针类型空类型四、整形在内存中的存储原码、反码、补码大小端字节序一、数据类型介绍数据从大的方向分为两类:内置类型 自定义类型内置类型我们前面已经学习过,如下:char //字符数据类型short //短整型int //整形long //长整...

2021-10-07 10:15:09 1424

原创 【C语言】超详讲解☀️ 指针是个什么针?(指针进阶篇)(讲解+代码演示+图解)

在前面的指针是个什么针?这篇文章中已经写了指针的基础知识,然后通过这篇文章来对指针进行更深层次的理解目录一、字符指针二、指针数组三、数组指针数组名和&数组名数组指针的使用四、函数指针函数地址函数指针创建函数指针的使用五、函数指针数组六、指向函数指针数组的指针一、字符指针字符指针的创建也是挺简单的,char*类型一次最多可访问一个字节的空间请看如下代码:#include <stdio.h>int main()...

2021-09-30 07:39:30 1611

原创 【C语言】超详讲解☀️指针是个什么针?(一次性搞定指针问题)

目录前言什么是指针?引例计算机是怎么对内存单元编号的呢?内存空间的地址如何得到想存地址怎么办?​本质目的不是为了存地址指针和指针类型前言指针这一部分可能很多人在学习的时候都觉得很难,但在这里我想说的是:不要自己吓自己,想一想,你当初刚上大学的时候可能觉得高数非常难,最后学完整本书的时候回过头再看还觉得很难吗? 肯定已经觉得没有刚开始学那么难了,那么其实指针也是这样的,只要把里面的东西都搞清楚,你就不觉得难了。一、 什么是...

2021-09-22 08:34:11 4457 2

原创 【C语言】☀️操作符详解☀️(详细讲解+代码演示+图解)

通过这篇文章我们将熟练掌握C语言中的各种操作符,表达式求值是如何使用操作符的,表达式求值该注意一些什么呢?一、操作符分类:算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑操作符 条件操作符 逗号表达式 下标引用、函数调用和结构成员操作符算数操作符+ - * / %注意:除了% 操作符之外,其他的几个操作符都可以作用于整数和浮点数。 % 操作符的两个操作数必须为整数。返回的是整除之后的余数如下代码:...

2021-09-19 09:49:42 2702

原创 【C语言】☀️ 数组 全面总结(详细讲解+代码演示+图解+经典案例)

一、什么是数组?数组是一组相同类型元素的集合,这些数据在内存中连续存放数组不是C语言的专利,Java、C++、C#、JavaScript、PHP 等其他编程语言也有数组C语言数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。前面在❤️整理2万字带你走进C语言(详细讲解+代码演示+图解)❤️(强烈建议收藏!!!)这篇文章中已经介绍过数组的基本用法,通过这篇文章

2021-09-15 08:27:00 3134

原创 【C语言】☀️函数超详讲解☀️(详细讲解+代码演示+图解)【建议收藏】

自己整理的长篇详细学习笔记分享给大家,如有错误,欢迎评论区指正目录一、 函数是什么?C语言中函数的分类二、库函数为什么会有库函数库函数的优点如何学习库函数C语言常用的库函数三、自定义函数为什么要有自定义函数函数的组成自定义函数的使用比较两数中的较大值交换两个整形变量的内容四、函数的参数五、函数的调用传值调用传址调用六、函数的嵌套调用和链式访问嵌套调用链式访问七、函数的声明和定义案例分析函数声明函数定义...

2021-09-13 12:41:20 4644 2

原创 【C语言】☀️分支语句和循环语句,一篇文章就够了☀️(详细讲解+代码演示+图解)【赶快收藏吧】

前言我们要知道C语言是结构化的程序设计语言,这里的结构化是什么意思呢?通常我们写C程序会写出三种结构:顺序结构 循环结构 选择结构计算机语言高度抽象了我们生活中的事情,通过一个计算机语言便能表达我们生活中的问题,以此来便捷的帮助我们解决生活中的问题。通过这篇博客我们来详细的介绍分支语句和循环语句分支语句ifswitch循环语句whilefordo whilegoto语句什么是语句?C语言中由一个分号...

2021-09-11 13:48:44 1657

原创 ❤️整理2万字带你走进C语言(详细讲解+代码演示+图解)❤️(强烈建议收藏!!!)

目录一、什么是C语言?二、第一个C语言程序代码程序分析程序运行一个工程中出现两个及以上的main函数代码运行结果分析三、数据类型数据各种类型为什么会有这么多的数据类型?计算机单位各个数据类型的大小注意事项数据类型的使用四、变量和常量变量的分类变量的使用变量的作用域和生命周期常量五、字符串+转义字符+注释字符串转义字符注释六、选择语句七、循环语句八、函数九、数组数组是什么呢...

2021-09-08 09:18:05 16239 8

原创 C语言从入门到进阶的必备利器(编译环境搭建完整教程)

前言学习一门语言非常重要的一步那就是通过写代码来练习,每天坚持练习,才能有所提高。然而我们很多人在初学C语言的时候就容易放弃,有一个很重要的原因那就是编译环境的选择,一个好的编译环境可以让你达到事半功倍的效果,高效率的写代码。这里我推荐一款微软的编译环境就是VS2019,它有社区版,专业版和企业版3个版本,其中社区版可免费使用,里面的界面,编译运行,调试和内存窗口等功能都非常好用,调试和内存工具对于初学C语言的人来说真的是一个神级工具,通过调试以及查看内存可以更清楚的理解C语言,并修复bug..

2021-09-01 12:27:04 774

原创 从现在开始,让我们将编程进行到底

听到编程,很多人第一时间想到的就是程序员好了,不调侃了,我们正文开始!!!回顾过去 在高中的时候曾有幸加入学校的创客机器人社团,在里面经过对机器人的搭建以及编程,对编程产生了浓厚的兴趣,因而在高考填报志愿的时候所有的志愿全部都填的是计算机类专业。在大一的时候,只学了一个C语言,但是C语言也学的很烂,感觉大学时间也是非常紧的,而不是像初高中老师说的那样,上了大学就轻松了,其实并不是这样,上了大学更应该要好好学习,天天编程,努力提升自己的技术。转眼间...

2021-09-01 11:28:39 1235

原创 【全网最细】3种方法模拟strlen函数计算字符串长度

众所周知,strlen函数是用来计算字符串长度的,但这种计算字符串的函数我们也可以自己写出来,这里详细介绍3种方法1.计数器写法#include<assert.h>int mystrlen(const char* p){ int count = 0; assert(p != NULL); while (*p) { count++; p++; } return count;}int main(){ int len = mystrlen("abcdef");

2021-06-08 09:09:52 664

原创 模拟qsort函数功能实现一个通用的冒泡排序(可用于多种类型数组的元素排序)

首先我们了解一下qsort函数的功能void qsort( void *base, size_t num, size_t width, int (__cdecl *compare )(const void *elem1, const void *elem2 ) );

2021-06-07 17:59:16 439

原创 实现冒泡排序

在对一个整形数组元素进行排序时,我们可以使用冒泡排序来实现代码实现如下#include<stdio.h>int main(){ int arr[] = { 10,9,8,7,6,5,4,3,2,1 }; int sz = sizeof(arr) / sizeof(arr[0]); //计算数组长度 int i = 0; int j = 0; int tmp = 0; for (i = 0; i < sz; i++) //每一趟冒泡排序 {

2021-06-07 13:25:39 558

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除