自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于C语言和Win32 API实现贪吃蛇

游戏初始化:设置游戏窗口大小、颜色、速度等参数,并初始化蛇的长度和位置。游戏循环:在一个无限循环中,不断更新游戏状态,包括蛇的移动、食物的生成和碰撞检测等。蛇的移动:根据用户的输入(通常是方向键),控制蛇的头部向相应方向移动,并更新蛇的身体位置。食物的生成:在游戏区域内随机生成食物,并标记其位置。碰撞检测:检测蛇是否吃到食物、是否碰到游戏边界或自己的身体。游戏结束条件:如果蛇碰到游戏边界或自己的身体,游戏结束,显示游戏结束画面。渲染画面。

2024-05-15 14:45:34 22018 65

原创 Java为什么会成为现在主流的编程语言

Java成为主流语言的原因在于其跨平台性、面向对象特性、丰富的库和框架支持,以及强大的社区和广泛的应用场景。这些优势使得Java在开发大型系统、企业级应用以及移动和Web开发等领域具有显著优势。Java是一种优秀的程序设计语言,它具有令人赏心悦目的语法和易于理解的语义。不仅如此Java还是一个有一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于嵌入式系统、移动终端、企业服务器、大型机等各种场合。

2024-05-15 14:15:52 2375 41

原创 python数据分析——时间序列

时间序列是按照时间顺序排列的一系列随时间变化而变化的数据点或观测值。时间序列可以是离散的,例如每月的销售数据,也可以是连续的,例如气温和股票价格等。时间序列常用于预测和分析未来的趋势,例如经济增长、股票走势、天气变化等。时间序列分析是数据分析中的重要部分,它涉及到对随时间变化的数据进行研究,以揭示其内在规律、趋势和周期性变化。Python作为一种强大的编程语言,拥有众多的数据处理和可视化库,如pandasnumpymatplotlib和seaborn等,这些库在处理时间序列数据时表现出色。

2024-05-14 09:07:31 3217 42

原创 Linux下的常用基本指令

Linux下的基本指令涵盖了文件管理、文本处理、系统信息、网络配置和权限管理等。

2024-05-13 07:41:44 3504 68

原创 string类的介绍与使用【C++】

string类是编程语言中用于表示和操作字符串的基本数据类型或类。它提供了一系列方法和操作,允许开发者对字符串进行创建、修改、查找、比较、转换等。string类通常具有不可变性,意味着一旦创建了字符串对象,其内容就不能被修改,但可以创建新的字符串对象来表示修改后的内容。这种特性有助于在多线程环境中保持数据的安全性。string类还提供了各种构造函数、操作符重载和格式化功能,使字符串操作更加灵活和高效。

2024-05-12 21:48:22 3207 81

原创 python数据分析——数据的选择和运算

在数据分析中,数据的选择和运算是非常重要的步骤。数据选择和运算是数据分析中的基础工作,正确和高效的选择和运算方法对于数据分析结果的准确性和速度至关重要。

2024-05-10 16:01:04 1849 40

原创 python数据分析所需要了解的结构基础

控制流语句:如条件语句(ifelifelse)、循环语句(forwhile)等,用于控制程序流程。函数与模块:自定义函数可以封装重复使用的代码,模块可以组织和管理这些函数。数据处理库:如NumPyPandas等,用于高效地处理和分析大量数据。数据可视化库:如MatplotlibSeaborn等,用于生成直观的数据可视化图表。了解这些结构基础是Python数据分析的关键,可以帮助分析人员更有效地处理、分析和呈现数据。Python中的列表是一种有序的数据类型,可以存储多个值。列表使用方括号[]

2024-05-09 18:48:30 1673 20

原创 Python数据分析常用模块的介绍与使用

Python数据分析模块提供了丰富的工具和库,可以帮助数据科学家和工程师更加高效地进行数据处理、清洗、分析、建模等工作,从而更好地探索数据、发现数据背后的规律和趋势,为业务决策和优化提供有力的支持。Python数据分析模块的出现,大大提高了数据科学家和工程师的工作效率和数据分析能力,为人们更好地理解和应用数据提供了有力的支撑。

2024-05-08 07:56:20 2700 38

原创 vector介绍与使用【C++】

C++中的vector是一个动态数组,它可以根据需要自动调整大小。它存储在连续的内存块中,提供了快速的随机访问和插入操作,但删除操作可能导致内存的移动。vector是STL(标准模板库)的一部分,可以容纳任何类型的元素,包括内置类型和用户定义的类型。使用vector时,需要包含头文件,并通过std命名空间访问。vector还提供了许多成员函数,如pop_back()size()等,以支持各种操作。c++文档vector是表示可变大小数组的序列容器。就像数组一样,vector。

2024-05-08 06:00:00 896 26

原创 python数据分析常用基础语法

Python是一种高级编程语言,其语法简洁易懂,支持多种编程范式,如面向对象、函数式编程等。Python采用缩进来表示代码块,使代码结构清晰易读。基础语法包括变量、数据类型、运算符、条件语句、循环语句、函数定义和调用等。Python支持动态类型,变量可在运行时更改类型。此外,Python还有丰富的标准库和第三方库,可用于文件处理、网络编程、科学计算等多种任务。掌握Python的语法基础是学习Python编程的第一步。变量是值可以改变的量,可以理解为一个容器。这个容器里存放的内容是可以发生改变的。

2024-05-07 20:20:02 1430 38

原创 数据分析的数据模型

数据分析离不开模型。在进行数据分析之前,先搭建数据分析模型,根据模型中的内容,具体细分到不同的数据指标进行细化分析,最终得到想要的分析结果或结论。在本章中,我们将讨论数学分类模型,包括最优化模型,统计模型,特别是统计推断模型,和机器学习模型。目标函数为线性函数并且所有约束条件也都是线性函数,则称其为线性优化模型,也称或线性规划问题。对于有n个变量和m个约束条件线性优化模型具有下述标准形式:我们选择求目标函数的最大值,变量取值非负做为线性优化模型的标准型。

2024-05-07 07:01:40 3160 9

原创 数据分析需要注意哪些法律法规

合法的数据分析应该基于合法合规、数据安全、明确分析目的和方法、保护个人隐私和公正客观透明等原则。

2024-05-06 09:27:39 1590 16

原创 数据分析的行为要求

数据分析人员应严格遵守相关的隐私法规和政策,确保处理的数据不被未经授权的人访问、修改或泄露。他们应采取必要的技术和安全措施来保护数据的机密性。对数据分析人员来说,遵守职业道德不只是一项伦理义务,也不只是一种自愿行为。而是一种法律义务,是一种强制性行为。数据分析人员应具有高度的社会责任感和自律意识,严格遵守法律法规、伦理道德和标准规范。

2024-05-06 09:22:26 1618 3

原创 通过一篇文章让你稳过计算机二级(C语言)

计算机二级c语言主要内容是熟练掌握C语言基础语法,了解常用数据结构和算法,能够使用C语言进行程序设计,编写简单的应用程序。软件指的是计算机系统中与硬件相互依存的另一部分,包括程序、数据和相关文档的完整集合。程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列。数据是使程序能正常操纵信息的数据结构。文档是与程序的开发、维护和使用有关的图文资料。可见,软件由两部分组成:机器可执行的程序和数据;机器不可执行的,与软件开发、运行、维护、使用等有关的文档。

2024-05-05 21:21:40 10797 21

原创 在系统学习C语言之前所需要了解的知识

本文基于VS2022,将介绍一系列的C语言常见概念,让读者对C语言有一个初步的了解,并对后续的学习做下铺垫。在VS上写代码,我们是需要创建项⽬的,直接新建项⽬就可以了。在项⽬中就可以添加源⽂件和头⽂件。C语⾔把 .c 为后缀的⽂件称为源⽂件,把 .h 为后缀的⽂件称为头⽂件。C语⾔中有⼀批保留的名字的符号,⽐如: int 、 if 、 return ,这些符号被称为保留字或者关键字。• 关键字都有特殊的意义,是保留给C语⾔使⽤的• 程序员⾃⼰在创建标识符的时候是不能和关键字重复的。

2024-05-05 21:21:29 1517 2

原创 数据分析——大数据伦理风险分析

随着大数据技术的不断发展,人们在数据采集、存储、处理和应用中面临着越来越多的伦理风险。这些风险可能会对个人隐私、社会公平、人工智能决策的公正性等方面产生影响。我们需要在设计和使用大数据系统时考虑到伦理问题,确保我们对数据和算法的使用是公正和透明的,同时保护个人隐私和权利。需要制定适当的政策和法规,规范大数据技术的使用,加强教育和公众信任,以确保大数据系统的安全和透明性。

2024-05-05 21:20:11 2327 1

原创 数据分析中大数据和云计算

大数据和云计算是两个不同但密切相关的概念。大数据是指大量非结构化或结构化数据集合,无法通过传统的数据处理方式进行管理和分析。大数据的特点包括数据量大、数据类型多样、数据速度快、数据价值高等。随着互联网的发展,人们获取和处理大数据的能力不断提高,大数据正在成为推动社会进步和经济增长的重要力量。云计算是指通过互联网将计算资源、存储资源和软件应用程序等提供给用户使用的一种计算模式。用户无需购买和维护自己的计算设备,只需通过互联网租用云端的计算资源,按需使用和支付。

2024-05-05 21:20:04 1834 2

原创 数据分析的统计推断

认识过程是从个别到一般,又由一般再到个别的过程。通过个别认识一般的主要思维方法是归纳,是从个别或特殊事物概括出一般原理的逻辑思维方法,在逻辑上叫做归纳推理。不完全归纳推理是统计推理归纳中比较常用的一种方法。不完全统计仅仅从集合中抽取少量或具有代表性的元素进行归纳,所以不完全归纳是统计归纳常用的数学工具之一。

2024-05-05 21:19:57 1654 1

原创 在数据分析中所需要运用到的概率论知识

构成总体的单位必须是同质的,总体和总体单位具有相对性,总体的单位也有可能成为一个新的总体。

2024-05-05 21:19:47 1989 3

原创 数据分析——业务指标量化

为了对业务指标进行分析,我们需要对其进行量化。我们将从数理统计的角度来对业务指标进行量化分析。对业务指标进行量化就是指用数字信息作为评价依据而形成的评价指标。量化指标一般指对一个业务指标进行量化的过程,能用具体数值来体现我们关心的业务指标。具体来说,在企业管理过程中,业务数据指标在量化之后能够用于考核定量工作,比如,销售额,人力资源的出工资或出勤率指标。

2024-05-05 21:19:38 2016 2

原创 数据分析——业务数据描述

业务数据描述将从统计学角度来分析这指标。利用统计方法,数据分析人员可以通过相应统计模型开展数据分析。数据分析过程包括数据收集,数据处理,数据探索,模型方法应用,分析结果数据展现及形成分析报告。业务报表是指对业务内容和数据的统计分析图表。统计图表代表了一张图像化的数据,形象地呈现数据。我们常常提到的可视化分析图表一般包括比较类图表,占比类图表,相关类图表和趋势类图表。在完成企业的业务指标体系构建之后,我们将讨论如何收集相关数据,并用数据形成指标。

2024-05-05 21:19:31 2087 2

原创 数据分析——业务指标分析

业务分析是一系列短期战略与战术协定。它可以为企业提供快速的评估和路线图,帮助企业识别机遇和规划转型路线业务指标分析可以为企业提供快速的评估和路线图,帮助企业识别机遇和规划转型路线。它还可以通过分析,帮助企业开启实现价值和竞争的新途径。业务分析通过帮助企业构建业务分析,商业智能,绩效管理,企业信息管理,和企业内容管理等方面的能力,从而辨认出关键的市场模式,降低管理成本并提高利用效率,积极主动地管理风险,实现利润的增长。

2024-05-05 21:19:23 2319 2

原创 数据分析概念定义和发展前景

数据分析的基础是统计学,是计算机的发展才使得对大数据操作成为可能,并使其在各行各业推广。数据分析是数学与计算机科学相结合的产物。数据是对客观事物观察的结果,表现在各个方面,是对客观事物的逻辑归纳,也是用于表示客观事物的未经加工的原始素材。我们可以从不同维度对数据进行描述。数据分析是一个快速发展的领域,未来的发展前景非常广阔。数据分析在未来的发展中将会有很多机遇和挑战,需要不断学习和掌握新的技术和技能,以适应不断变化的市场需求和技术发展。

2024-05-05 21:19:02 2248 2

原创 通过一篇文章让你了解STL是什么

STL(Standard Template Library)是C++编程语言的一个标准库,包含了一系列模板类和函数,用于实现常见的数据结构和算法。它分为容器(Containers)、迭代器(Iterators)、算法(Algorithms)和配接器(Adapters)四个部分。STL的目的是提供高效、灵活、可复用的代码,以便快速构建高质量的C++程序。通过使用STL,程序员可以避免重新发明轮子,提高代码的可读性和可维护性。

2024-05-05 21:16:19 1315 40

原创 指令和界面【Linux】

Linux操作系统提供了丰富的命令行界面和图形用户界面工具,用户可以根据自己的需求选择适合的界面进行操作。命令行界面更加灵活和高效,适合熟悉命令的用户;图形用户界面更加直观和友好,适合新手用户。严格意义上讲,光光学习Linux操作是远远不够的。还有系统,网络。

2024-05-05 21:16:10 1909 34

原创 C++模板详解

如何实现一个通用的交换函数呢?......重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时,就需要用户自己增加对应的函数代码的可维护性比较低,一个出错可能所有的重载均出错那能否告诉编译器一个模子,让编译器根据不同的类型利用该模子来生成代码呢?如果在C++中,也能够存在这样一个模具,通过给这个模具中填充不同材料(类型),来获得不同材料的铸件(即生成具体类型的代码),那将会节省许多头发。巧的是前人早已将树栽好,我们只需在此乘凉。

2024-05-05 21:16:03 1975 25

原创 深度剖析C++的new、delete和placement new

如果申请的是内置类型的空间,new和mallocdelete和freenew/delete申请和释放的是单个元素的空间,new[]和delete[]申请的是连续空间,而且new在申请空间失败时会抛异常,malloc会返回NULL。调用函数申请空间在申请的空间上执行构造函数,完成对象的构造什么是内存泄漏:内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,失去了对该段内存的控制,因而造成了内存的浪费。

2024-05-05 21:15:52 1370 9

原创 C++动态内存管理

C++动态内存管理涉及使用new和delete操作符来动态分配和释放堆内存。new用于在堆上分配内存并初始化对象,delete用于释放先前分配的内存。此外,C++还提供了智能指针如和来自动管理内存,以避免内存泄漏和悬挂指针。这些智能指针在超出作用域时会自动删除其所指向的对象。int main()

2024-04-21 09:43:21 1197 2

原创 C++的内部类和匿名类

内部类是定义在另一个类内部的类,它可以访问外部类的私有成员。匿名类是没有名字的类,通常用于一次性使用的简单对象创建,可以直接在需要使用的地方定义,并传递给其他方法。内部类和匿名类都是C++等编程语言的重要特性,它们可以简化代码结构,提高代码重用性。生命周期即在当前作用域下,即用即销毁通过匿名对象可以简化代码。

2024-04-20 14:35:25 1510 11

原创 C++实战——日期类的实现

日期类是指处理日期和时间相关操作的编程类库或对象。它提供了创建、解析、比较、格式化日期和时间等功能,方便开发者在程序中处理与时间相关的逻辑。日期类通常包括年、月、日、时、分、秒等属性,并允许进行各种日期时间的计算和操作,如加减天数、获取星期几、判断是否为闰年等。通过使用日期类,开发者可以更加高效、准确地处理时间相关的数据。

2024-04-20 11:08:17 1287 6

原创 SQL Server 2022 安装及使用

SQL Server 2022是微软公司发布的最新数据库管理系统,它在前代版本的基础上进行了多项改进和优化,包括性能提升、安全性增强、云集成和AI集成等。新版本的SQL Server提供了更高效的查询处理、更智能的数据管理和更好的可伸缩性,以满足各种业务需求。同时,SQL Server 2022还加强了与Azure等云服务的集成,为用户提供了更加灵活和便捷的云数据库解决方案。此外,新版本还引入了更多智能功能,如机器学习集成和自动化优化,帮助用户更好地利用数据驱动业务决策。

2024-04-19 15:03:16 3217 34

原创 Windows下通过MySQL Installer安装MySQL服务

MYSQL官方提供了Installer方式安装MYSQL服务以及其他组件,使的Windows下安装,卸载,配置MYSQL变得特别简单。

2024-04-19 14:12:57 1026 28

原创 C++从入门到精通——友元

友元提供了一种突破封装的方式,有时提供了便利。但是友元会增加耦合度,破坏了封装,所以友元不宜多用。友元分为:友元函数和友元类友元函数可访问类的私有和保护成员,但不是类的成员函数友元函数不能用const修饰友元函数可以在类定义的任何地方声明,不受类访问限定符限制一个函数可以是多个类的友元函数友元函数的调用与普通函数的调用原理相同友元类的所有成员函数都可以是另一个类的友元函数,都可以访问另一个类中的非公有成员。友元关系是单向的,不具有交换性。比如上述Time类和Date类,在Time。

2024-04-18 16:05:25 951 31

原创 C++的static成员

声明为static的类成员称为类的静态成员,用static修饰的成员变量,称之为静态成员变量;用static修饰的成员函数,称之为静态成员函数。静态成员变量一定要在类外进行初始化。静态成员是指属于类而不属于类的任何对象的成员。静态成员在类的所有对象之间共享,并且可以在不创建对象的情况下被访问。静态成员包括静态变量和静态方法。静态变量是类的所有对象之间共享的变量。它们在内存中只有一份拷贝,并且可以直接通过类名访问。静态变量在类的任何对象被创建之前就被初始化,它们的值在所有对象之间是一致的。

2024-04-17 20:48:55 1461 32

原创 C++的const与取地址重载

类的6个默认成员函数:如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。权限缩小可以,权限放大不可以,即被const修饰的是可读的,不被修饰的是可读可写的,不被修饰的可以访问被修饰的。

2024-04-17 20:30:50 1476 25

原创 C++赋值运算符重载

类的6个默认成员函数:如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。C++为了增强代码的可读性引入了运算符重载,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数类似。函数名字为:关键字operator后面接需要重载的运算符符号。函数原型:返回值类型operator。

2024-04-16 13:55:10 958 43

原创 C++的拷贝构造函数

类的6个默认成员函数:如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。

2024-04-15 13:39:19 1304 37

原创 C++析构函数

类的6个默认成员函数:如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。

2024-04-15 07:00:00 1817 31

原创 解决Xshell登录云服务器的免密码和云服务器生成子用户问题

Xshell登录云服务器免密码问题的解决方案通常涉及使用SSH密钥对。用户生成一对密钥(公钥和私钥),将公钥添加到云服务器的授权文件中,然后使用私钥在Xshell中设置连接。这样,每次连接时Xshell会使用私钥进行身份验证,无需输入密码。这提高了安全性并简化了登录过程。

2024-04-14 15:07:32 1205 15

原创 使用云服务器搭建CentOS操作系统

CentOS是一种基于Red Hat Enterprise Linux(RHEL)源代码构建的开源企业级Linux发行版,旨在提供稳定、可靠、安全的操作系统环境。它集成了大量的软件包和工具,方便用户进行服务器管理、软件开发和部署应用。CentOS以稳定性和兼容性著称,广泛应用于企业级数据中心、云计算和虚拟化等领域。同时,它拥有庞大的社区支持和丰富的文档资源,为用户提供了便捷的解决方案和技术支持。

2024-04-14 11:03:37 1764 36

基于Wireshark实现对FTP的抓包分析

基于Wireshark实现对FTP的抓包分析

2024-06-15

数据结构从入门到精通-归并排序

数据结构从入门到精通-归并排序

2024-03-26

数据结构从入门到精通-快速排序

数据结构从入门到精通-快速排序

2024-03-23

数据结构从入门到精通-冒泡排序

数据结构从入门到精通-冒泡排序

2024-03-20

数据结构从入门到精通-堆排序

数据结构从入门到精通-堆排序

2024-03-20

数据结构从入门到精通-直接选择排序

数据结构从入门到精通-直接选择排序

2024-03-20

数据结构从入门到精通-希尔排序

数据结构从入门到精通-希尔排序

2024-03-19

数据结构从入门到精通-直接插入排序

数据结构从入门到精通-直接插入排序

2024-03-19

数据结构从入门到精通-二叉树的实现和遍历

数据结构从入门到精通-二叉树的实现和遍历

2024-03-18

数据结构从入门到精通-队列

数据结构从入门到精通-队列

2024-03-10

数据结构从入门到精通-栈

数据结构从入门到精通-栈

2024-03-08

C语言项目实战-贪吃蛇

C语言项目实战-贪吃蛇

2024-03-05

数据结构从入门到精通-链表

双向循环链表

2024-03-05

数据结构项目实战-通讯录

数据结构项目实战-通讯录

2024-03-02

数据结构从入门到精通-顺序表

数据结构从入门到精通-顺序表

2024-03-02

C语言通过使用数据结构来实现双向顺序栈

双向顺序栈(Double-ended sequential stack)是一种栈数据结构,它允许在两个方向上进行入栈和出栈操作。与常规栈不同,双向顺序栈具有两个栈顶位置,一个在栈的一端,称为"头栈顶"(head),另一个在栈的另一端,称为"尾栈顶"(tail)。 双向顺序栈可以使用数组来实现。可以将数组的一端作为栈的头部,并使用一个指针(head)来指示头部的位置;另一端作为栈的尾部,并使用另一个指针(tail)来指示尾部的位置。 在双向顺序栈中,可以对头部和尾部进行入栈和出栈操作。例如,可以从头部入栈、从头部出栈、从尾部入栈和从尾部出栈。这种灵活性使得双向顺序栈可以适应更多不同的应用场景。 双向顺序栈的一个常见应用是实现双端队列(deque),即可以在两端进行插入和删除操作的队列。通过在头部和尾部进行入栈和出栈操作,可以方便地实现队列的各种操作,如队列的插入、删除和访问等。

2023-12-27

c语言-通过使用数据结构来实现顺序栈的使用

顺序栈(Sequential Stack)是一种使用数组实现的栈结构。它具有先进后出(Last In, First Out,LIFO)的特点,即最后入栈的元素首先出栈。 顺序栈中的元素按照入栈的顺序存储在数组中,并且通过一个指针来记录栈顶的位置。栈顶位置的初始值为-1,表示栈为空。 顺序栈的基本操作包括入栈(push)、出栈(pop)、获取栈顶元素(peek)和判断栈是否为空(is_empty)。

2023-12-27

通过C语言实现数据结构的循环链表

循环链表是一种特殊的链表,它的尾节点指向头节点,形成一个循环。循环链表可以通过一个指针来表示,并且可以在任意节点上进行插入、删除和遍历操作。 循环链表的节点结构通常包含两部分:数据域和指针域。数据域用于存储节点的数据,指针域用于指向下一个节点。 在循环链表中,通常会有一个头指针指向第一个节点。通过头指针可以遍历整个循环链表。添加一个新节点时,只需要修改相邻节点的指针,将新节点插入到链表中即可。删除一个节点时,同样需要修改相邻节点的指针,将被删除的节点排除在链表之外。 循环链表的应用场景包括:约瑟夫环问题、循环队列等。在循环链表中,尾节点的指针域指向头节点,这种特性使得循环链表可以很方便地实现环形结构。 循环链表相比于普通链表,有以下特点: 1. 循环链表没有NULL指针,可以避免了一些特殊情况的处理。 2. 循环链表可以在插入和删除节点时更方便,不需要特殊处理头节点和尾节点。 但是,循环链表也有一些缺点: 1. 遍历循环链表时,需要额外判断循环结束的条件,否则会陷入死循环。 2. 插入和删除节点时,需要保证链表的循环结构不被破坏,需要仔细处理指针的修改。

2023-12-26

全网最详细的-线性表的链式存储

线性表的链式存储是一种使用链表来存储线性表的元素的方法。链表是一种非连续的存储结构,由一系列节点组成,每个节点包含数据域和指针域,数据域用于存储元素的值,指针域用于指向下一个节点的位置。 在链式存储中,线性表的每个元素都被封装在一个节点中,并且每个节点通过指针域链接起来形成链表。链表中的第一个节点称为头节点,最后一个节点称为尾节点,尾节点的指针域指向空。 链式存储相比于顺序存储,有一些优点和缺点。其中的优点包括插入和删除元素的操作效率高,不需要移动其他元素;缺点包括访问元素的效率低,需要遍历链表。 在实现链式存储时,可以使用单链表、双链表或循环链表等不同的结构来实现。单链表包含一个指针域,指向下一个节点;双链表包含两个指针域,分别指向前一个节点和后一个节点;循环链表是一种特殊的链表,尾节点的指针域指向头节点。 总的来说,线性表的链式存储是一种灵活的存储方式,适用于频繁插入和删除操作的场景。

2023-12-26

C语言从入门到实战-数组和指针的强化练习题

包含一些常见的指针和数组的高频率错题和面试题

2023-11-22

c语言从入门到实战-回调函数与qsort的讲解和模拟实现

回调函数是一个函数,它作为参数传递给另一个函数,并且能够在该函数内部被调用。在C语言中,回调函数通常被用于实现事件处理和排序算法中。 `qsort`是C标准库中的一个排序函数,它可以对任意类型的数组进行排序。`qsort`需要三个参数:要排序的数组、数组元素的个数和一个指向回调函数的指针。回调函数必须满足两个条件:能够比较数组中的元素,返回一个整数表示它们之间的大小关系;并且它应该能够被`qsort`函数调用。

2023-11-21

通过C语言实现通讯录,包含两种方式,动态存储和静态存储

实现通讯录的一种思路是使用结构体数组来存储联系人信息。每个联系人使用一个结构体来表示,结构体中的成员变量包括姓名、电话号码等。 首先,你可以定义一个结构体来表示联系人的信息 接下来,你可以定义一个数组来存储联系人信息。可以使用一个常量来定义通讯录最大容量 然后,可以声明一个数组来存储联系人信息: 在主函数中,你可以通过循环菜单等方式让用户输入操作选项,并根据选项进行相应的处理。例如,用户可以选择添加联系人、查找联系人、删除联系人等操作。 添加联系人可以通过依次输入姓名、电话号码等信息来实现。 查找联系人可以通过遍历数组并逐个判断姓名或电话号码来匹配实现。 删除联系人可以通过遍历数组并根据姓名或电话号码匹配来删除相应联系人 当然,这只是一种简单的思路,你可以根据实际需求和功能扩展来设计更复杂的通讯录程序。

2023-11-20

通过C语言实现杨辉三角形的编程

杨辉三角形 杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡(1623----1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。 杨辉三角,是二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合

2023-11-20

通过C语言实现水仙花数的编程

水仙花数 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。 水仙花数只是自幂数的一种,严格来说3位数的3次幂数才称为水仙花数。 附:其他位数的自幂数名字 一位自幂数:独身数 三位自幂数:水仙花数 四位自幂数:四叶玫瑰数 五位自幂数:五角星数 六位自幂数:六合数 七位自幂数:北斗七星数 八位自幂数:八仙数 九位自幂数:九九重阳数 十位自幂数:十全十美数

2023-11-20

C语言从入门到实战-通过使用C语言来实现线性表的顺序存储

线性表的顺序存储是指用一段连续的存储空间存储线性表中的元素,用数组来实现。在顺序存储结构中,线性表中相邻的元素在物理位置上也是相邻的。具体来说,线性表中的每个元素都存储在一个固定的数组下标位置上,数组下标从0开始,依次递增。因此,可以通过元素在数组中的下标来访问线性表中的元素。优点是支持随机访问和下标定位,存储密度高;缺点是插入和删除的时间复杂度较高,需要移动大量元素。

2023-11-08

c语言从入门到实战-猜数字小游戏

c语言从入门到实战-猜数字小游戏

2023-10-23

python数据分析-Python语言基础(数据结构基础)

python数据分析-Python语言基础(数据结构基础)

2023-10-18

python数据分析-Python语言基础(数据结构基础)

python数据分析-Python语言基础(数据结构基础)

2023-10-18

c语言从入门到实战-C语言数据类型和变量

c语言从入门到实战-C语言数据类型和变量

2023-10-14

c语言从入门到实战-C语言数据类型和变量

c语言从入门到实战-C语言数据类型和变量

2023-10-13

c语言从入门到实战-C语言常见概念

c语言从入门到实战-C语言常见概念

2023-10-12

python数据分析-数据可视化(图形绘制基础)

python数据分析-数据可视化(图形绘制基础)

2023-10-11

python数据分析-时间序列

python数据分析-时间序列

2023-10-11

python数据分析-数据分类汇总与统计

python数据分析-数据分类汇总与统计

2023-10-11

python数据分析-数据的选择和运算

python数据分析-数据的选择和运算

2023-10-10

python数据分析-数据预处理

python数据分析-数据预处理

2023-10-10

python数据分析-数据分析的数据的导入和导出

python数据分析——数据分析的数据的导入和导出

2023-10-10

python数据分析-Python数据分析模块

python数据分析-Python数据分析模块

2023-10-09

python数据分析-Python数据分析模块

python数据分析-Python数据分析模块

2023-10-09

牛客网 BC30 时间转换 练习题

牛客网BC30 时间转换

2023-10-08

空空如也

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

TA关注的人

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