自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 原创性声明

由于某些特殊原因,本人从51CTO转到了本平台,在51CTO上的ID为“城南hua已开”,本人声明本博客上的内容都属于原创,不是转载和翻译。以下为51CTO上原博客的相关链接。51CTO城南hua已开相关博客。...

2020-11-07 19:11:41 590

原创 带环链表相交问题

  带环链表交点完整代码在最后。1不带环链表相交1.1问题描述LeetCode-相交链表:  编写一个程序,找到两个单链表相交的起始节点。  如下面的两个链表:  在节点 c1 开始相交,若两链表不相交,则返回null。  如上图所示(其中abc表示节点的个数),使用两个指针x和y分别指向链表1和链表2的起始位置开始向后遍历:  对于有交点的链表:x指针从链表1开始向后走,当走到链表1的末尾时,其走过了a+c个节点,此时将x指针指向链表2的头部。y指针从链表2开始向后走,当走到链表

2021-03-06 17:15:52 892

原创 数据结构-时间&空间复杂度

时间&空间复杂度1算法1.1算法的特性1.2好算法2尺子2.1TA(P)T_{A}(P)TA​(P)2.2TA(n)T_{A}(n)TA​(n)2.3算法评判2.3.1实验统计法2.4大O记号2.5时间复杂度2.5.1常数复杂度O(1)O(1)O(1)2.5.2对数复杂度O(log⁡n)O(\log n)O(logn)2.5.3多项式复杂度O(nc)O(n^{c})O(nc)2.5.4指数复杂度O(2n)O(2^{n})O(2n)2.6算法分析2.6.1正确性分析2.6.2复杂度的分析2.6.2.1

2021-02-10 17:26:17 1183 2

原创 面向对象练习--简易图书管理系统实现

简易图书管理系统实现1基本要求1.1创建类1.1.1`Book`类1.1.2`BookList`类1.1.3操作类1.1.3.1接口1.1.3.2操作类1.1.3.2.1`AddOperation`类1.1.3.2.2`DelOperation`类1.1.3.2.3`DisplayOperation`类1.1.3.2.4`FindOperation`类1.1.3.2.5`BorrowOperation`类1.1.3.2.6`ReturnOperation`类1.1.3.2.7`ExitOperation`类

2021-02-07 19:22:53 962

原创 Java异常

异常是程序运行过程中出现的一种错误。防御式编程在计算机编程中,不存在没有错误的代码,尽管一个程序员在编写代码时能够考虑的面面俱到,但写出的代码可能仍然处理不了全部情况,或者某些情况下,所考虑到的情况是无法进行处理的,此时就需要在此处为用户做出一些提示或其他。这种提前考虑到不同情况来进行不同处理的编程思想称为防御式编程。防御式编程的两种方式:LBYL:Look Before You Leap.在操作之前就做充分的检查EAFP:It’s Easier to Ask Forgiveness than

2021-02-06 18:13:18 584 1

原创 面向对象:继承&多态

在Java类和对象一文中简要介绍了面向对象的一些基础知识,本文对其中涉及到的继承和多态进行简要介绍。继承语法继承是面向对象中可以重复使用代码的一种手段,允许在保持原有类特性的基础上进行一定的扩展和增加功能,这样产生新的类称为派生类。继承的语法如下:public class ClassName extends SuperClass{ //类体}使用extends关键字来指定父类(超类)Java中一个类只能继承一个类,即单继承子类会继承父类所有的属性和方法,但只能访问和使用由protect

2021-02-05 10:14:43 564 1

原创 Java中String类

String类不得不说,String类应该算是我们学习Java中遇到和使用的的第一个类,因此学习和了解String类的相关知识,也有助于我们更好的理解类。创建字符串常见的创建字符串有如下三种方式://方法1String str1 = "Hello World";//方法2String str2 = new String("Hello World");//方法3 char[] charArray = {'a','b','c',};String str3 = new String(charA

2021-02-01 20:53:47 163

原创 串匹配--KMP算法的实现与优化

串匹配--KMP算法的实现与优化串0相关概念1关注的问题1.1是否出现?detection1.2第一次在哪出现?location1.3出现了几次?counting1.4所有出现的位置在哪里?enumeration1.5重点问题2串匹配算法2.1算法一:蛮力匹配2.1.1原理2.1.2代码2.2算法二:KMP算法2.2.1KMP算法的原理2.2.2记忆力 OR 预知力2.2.3`Next[j]`表2.2.4KMP主算法2.2.5`Next[j]`表的构建2.2.5.1通配哨兵2.2.5.2递推构造2.2.5.

2021-01-30 21:16:57 835 1

原创 Java类和对象

Java类和对象文章目录Java类和对象面向对象基本概念对象类消息面向对象的特性封装性继承性多态性类的定义类声明类的访问限定修饰符类的其他修饰符`class ClassName``extends SuperClass``implements InterfaceNameList`成员的定义成员变量的定义限定访问修饰符实例变量和类变量--`static`关键字`type variableName``final`关键字`volatile`关键字成员方法的定义限定访问修饰符类方法和实例方法--`static`关键

2021-01-28 20:14:27 1058 4

原创 Java变量、数据类型(基本类型)、运算符和注释

变量变量的定义变量是一个用于存放用户数据或程序运行产生数据的量。通常来说,如果定义了一个变量,那么计算机会在内存中为该变量开辟一块空间,这块空间用于存放该变量对应的数据。变量的命名规则Java中,变量命名有如下规则:必须以字母、下划线、或者美元符$开头;以美元符$ 开头命名的变量虽然能够编译通过但是不建议使用;中文也可以作为命名开头且编译也能通过,但是不建议使用。除开头外后面的部分可以有字母、下划线、美元符以及数字组成;同样的含有美元符‘以及数字组成;同样的含有美元符`以及数字组成;同样的含有

2020-12-15 20:14:57 151

原创 初识Java

Java概述  同C语言一样,Java也是一门计算机程序设计语言,其不仅吸收了C++语言的优点,同时又摒弃了C++中许多难以理解概念(如多继承、指针等)。Java是门面向对象的编程语言。1面向对象  何为面向对象?面向对象是相对于面向过程而言的,C语言为面向过程语言,面向过程即为分析出解决某个问题所需的具体步骤,然后使用函数把这些步骤一步一步的实现,使用时依次调用即可。1.1 对象  对象的含义是指具体的某一个事物,即在现实生活中能够看得见摸得着的事物。在面向对象程序设计中,对象所指的是计算机系统

2020-12-13 10:48:00 413

原创 c语言-程序环境和预处理

注:本文如无特殊说明,都指的是在Windows 10下的VS环境。1程序环境计算机语言分为机器语言、汇编语言和高级语言,c语言属于高级语言的一种,在所有的程序设计语言中,只有机器语言编制的源程序能够被计算机直接理解和执行,用其它程序设计语言编写的程序都必须利用语言处理程序“翻译”成计算机所能识别的机器语言程序。因此,在ANSI C的任何一种实现中,都存在两个不同的环境。首先是翻译环境,翻译环境可以将c语言源代码(后缀为.c的文件)转换为可执行的机器指令(后缀为.exe的文件)。其次是执行环境,用于实

2020-12-04 10:21:57 446

原创 C语言--文件操作&通讯录的改造(用文件存储通讯录的信息)

C语言文件文件在程序设计中,一般谈的文件有两种:程序文件、数据文件。程序文件一般包括源程序文件(后缀为)

2020-12-02 11:00:42 737

原创 C语言--动态内存&&通讯录的改造(可增长空间)

动态内存管理在c语言中,我们可以为所需要的数据开辟一定的内存空间,但大部分情况下,这些开辟的空间都是固定的,在通讯录一文中的最后分析得到,当我们不需要那么多人信息时,所开辟的内存往往不能利用完而造成内存浪费,而当我们需要存放的信息超过其上限时,多余的信息无法存入,所以如果能有某种方式,在我们运行程序时根据我们的实际需求帮助我们动态的增删内存,将会使内存利用方式得到大大的提高。在C语言中,有专门的实现函数:动态内存函数。内存分配在C语言中,内存通常划分为如下几个区域:内核空间区域:该区域用户代码不能

2020-11-30 22:43:35 318

原创 结构体案例--简易通讯录的实现

通讯录的实现  通讯录是我们最常见的一个应用,打开手机,找到通讯录,可以看出,一个联系人的信息包括最基本的姓名,电话。其他的我们有时候想保存一下联系人的QQ,地址以及性别等等。每个联系人都有这些基本信息(由于本人水平有限,所以本案例不考虑重名以及一个人有多个电话等复杂情况,只考虑最简单的情况),因此我们可以定义一个这样的结构体来存储这样的信息。假设我们要存放20个人的信息,那我我们可以进行如下声明:#define MAX 20#define MAX_NAME 20#define MAX_TELE

2020-11-08 22:37:31 310

原创 C语言自定义数据类型

结构体结构体的声明结构体是一些值的集合,这些值称为成员变量,结构体的每个成员可以使不同类型的变量。结构体的通用声明格式为:struct tag{ member-list;}variable-list;//变量列表通常可以不写。例如想要描述一个人,其基本的应该有姓名,年龄,性别等,则对应的结构体为:struct person{ char name[20];//姓名 short age;//年龄; char sex[5];};//一定要注意这里是有分号的结构体变量定义和初始化

2020-11-07 19:07:11 393

原创 C语言中字符字符串以及内存操作函数

1字符及其操作函数1.1字符  字符类型char是C语言中极为重要的一种类型,相比整型,浮点型其操作也有略微不同,今天就来介绍C语言中关于字符的那些事。  我们这里谈到的字符均指的是美国信息交换标准代码(American Standard Code for Information Interchange,下文简称ASCII码)表中的字符,根据该表可知,每一个字符都对应一个编号,例如字符’a’的ASCII码编号为97,字符’A’的ASCII码编号为65,字符’1’的ASCII码编号为49等等。由于计算机

2020-11-07 18:54:26 543

原创 指针闲谈

指针闲谈本文将采用循序渐进的方式,来简要谈一谈C语言中指针的定义和分析。谈到c语言,就绕不开c语言中的一把利器–指针。指针可以直接指向物理内存地址,对内存进行操作。在计算机中,我们把内存划分为一个个小的单元,每个单元对应一个编号(或者地址),而指针可以利用地址,直接找到该地址对应的变量值。通俗的理解就是指针像门牌号,我们可以通过门牌号找到对应房间,从而找到房间里的人。因此,指针也是一个变量,用于存放地址的变量。在《c语言数据存储》一文中已经分析了,物理内存中是以一个字节为一个单元,因此,我们可以把内

2020-11-06 22:21:56 258

原创 C语言数据类型&存储

数据存储注:本文档说的系统是指的作者目前使用的操作系统(Win10家庭版64位)。在计算机中,数据以二进制的方式进行存储。在内存中,存储的最小单元为比特(bit)位,以0和1来表示比特位的值。对于本系统总共有64根地址总线,每根线都有两种状态:高电位和低电位(可以通俗的理解为开关的闭合和断开)。在高电位时表示1,低电位时表示0。每根线都有2种状态,那么总共可以表示出264种状态,即可以存储264比特的值。由于使用比特表示起来比较麻烦,所以规定8个比特位为1个字节(Byte),通常把1个字节表示为1B,

2020-11-06 12:49:57 425 1

原创 C语言实战项目—扫雷小程序

摘要  扫雷游戏是微软自带的一款小游戏。扫雷游戏的玩法是,以9*9棋盘为例,棋盘上随机分布着10个地雷,玩家在棋盘上进行点击,如果被点击的格子是地雷,则玩家被炸“死”,游戏结束;如果被点击的格子上没有地雷,与被点击的格子相邻的格子(被点击格子的上下左右还有斜向,共八个格子)有地雷,则在被点击的格子上显示这些地雷的总数,如果与被点击的格子相邻的八个格子都没有地雷,则棋盘自动展开,直到与展开的格子相邻的格子有地雷才停止。此时最后被展开的格子显示其相邻格子共有的地雷数。  除上述功能外,如果玩家认为某个格子有

2020-11-05 22:41:12 398

原创 C语言小项目--《三子棋》实战训练

C语言小项目–《三子棋》实战训练写在开头:本案例代码采用win10系统下 Visual Studio 2019 编译器进行书写编译的。对于该编译器“scanf()”编译时无法通过,解决方案在每个需要该函数的文件的第一行加入如下代码:#define _CRT_SECURE_NO_WARNINGS 1首先建立主程序文件main.c,函数文件game.c,头文件game.h。其中函数文件用于存放对游戏中各个部分功能实现的函数代码;头文件用于进行函数声明。对于任何程序,都需要一个主体部分,在三子棋游戏中也

2020-11-05 22:10:42 311

空空如也

空空如也

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

TA关注的人

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