E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
初阶数据结构--C语言
【
C语言
】
数据结构
#实现堆
目录(一)堆(1)堆区与
数据结构
的堆(二)头文件(三)功能实现(1)堆的初始化(2)堆的销毁(3)插入数据(4)删除堆顶的数据(5)得到堆顶的数据(6)判断堆是否为空(7)得到堆内数据个数正文开始:(一
水墨不写bug
·
2024-02-20 01:20
数据结构
数据结构
算法
c语言
数据结构
-树
它是树型结构(非线性结构)结点之间具有分支,具有层次结构定义:Tree为n(n>=0)个结点的有限集n=0时为空树,n>0时满足以下两种情况:1.有且仅有一个特定的结点称之为root(根)。2.其余结点可以分为m个互不香蕉道有限集,称其为子树。度:结点的分支数,树的度为结点度的最大值。树的深度为结点的最大层次。二叉树二叉树并非树的特殊情况,他们是两种概念,二叉树结点的子树要区分左右子树,就算只有一
下水道程序员
·
2024-02-20 01:20
数据结构
C语言
系列-带有副作用的宏参数和##&命名约定&宏替换的规则
个人主页:会编辑的果子君个人格言:“成为自己未来的主人~”目录带有副作用的宏参数宏替换的规则宏函数的对比#和###运算符##运算符命名约定#undef带有副作用的宏参数当宏参数在宏的定义中出现超过一次的时候,如果参数带有副作用,那么你在使用这个宏的时候就可能出现危险,不可控的后果,副作用就是表达式求值的时候出现的永久性效果例如:x+1;//没有副作用x++;//有副作用MAX宏可以证明具有副作用的
会编程的果子君
·
2024-02-20 01:49
数据结构
c语言
开发语言
C/C++编程:STL queue原理探究
概述queue是一种先进先出(FIFO)的
数据结构
,它有两个出口,如下图queue允许移除最前面元素、新增最后面元素,访问最前面和最后面的元素但是,除了可以移除最前面的元素,从最后面插入元素之外,没有其他任何反复可以存取
OceanStar的学习笔记
·
2024-02-20 01:49
C++
leetcode
C++
C++STL之Queue容器
C++STL之Queue容器1.再谈队列回顾一下之前所学的队列,队列和栈不同,队列是一种先进先出的
数据结构
,STL的队列内容极其重要,虽然内容较少但是请务必掌握,STL的队列是快速构建搜索算法以及相关的数论图论的状态存储的基础
芯片烧毁大师
·
2024-02-20 01:48
数据结构
C++
c++
开发语言
C++学习:stack
1.stack的定义和结构stack是一种后进先出(LIF0)的
数据结构
,使用前需要包含头文件,stack提供了一组函数来操作和访问元素,但它的功能相对较简单。
Douglas_fan
·
2024-02-20 01:47
C++算法
c++
学习
java
开发语言
算法
C++学习:queue
queue队列queue是一种先进先出(FIFO)的
数据结构
。queue提供了一组函数来操作和访问元素,但它的功能相对较简单。
Douglas_fan
·
2024-02-20 01:15
C++算法
c++
学习
算法
开发语言
list
C++后台开发的主流技能加点
C++是一门博大精深的编程语言,不仅拥有继承于
C语言
的过程化程序设计思想,还包含有面对对象(
白开水。
·
2024-02-20 01:45
【
C语言
】Doxygen生成函数调用图
如果需要将
C语言
源代码的结构转换为流程图,需要遵循以下步骤:安装Doxygen和Graphviz需要确保系统上已经安装了Doxyge
尘中928
·
2024-02-20 01:39
编程
开发语言
【
C语言
】socket 层到网络接口的驱动程序之间的函数调用过程
一、socket层到网络接口的驱动程序之间的函数调用过程概述在Linux操作系统中,socket层到网络接口的驱动程序之间的函数调用过程相对复杂,涉及多个层次的交互。以下是一个简化的概述,描述数据从socket传递到硬件驱动,再到硬件设备的基本调用过程:1.用户空间到内核空间:用户程序通过socketAPI发起网络操作。当用户空间要发送数据时,它会调用如sendto或write等系统调用,这些调用
尘中928
·
2024-02-20 01:39
编程
#
C语言
#
linux内核
c语言
开发语言
数据结构
:栈
文章目录1.栈的概念及结构2.栈的实现2.1初始化2.2入栈2.3出栈2.4栈顶元素2.5栈中有效元素个数2.6检测栈是否为空2.7销毁栈2.8栈的打印今天学习一种新的
数据结构
——栈1.栈的概念及结构栈
戴墨镜的恐龙
·
2024-02-20 01:06
数据结构
数据结构
【
C语言
】Debian安装并编译内核源码
在Debian10中安装并编译内核源码的过程如下:1.安装依赖包首先需要确保有足够的权限来安装包。为了编译内核,需要有一些基础的工具和库。sudoaptupdatesudoaptupgradesudoaptinstallbuild-essentiallibncurses-devbisonflexlibssl-devlibelf-dev2.下载内核源码可以从官方网站(https://www.kern
尘中928
·
2024-02-20 01:34
编程
#
linux内核
#
linux
debian
linux
第一章节 绪论以及第二章节 线性表
参考:1.
数据结构
C语言
版|第2版;2.力扣;3.2025年
数据结构
考研复习指导。三个参考分别依次对应文章三个部分。
Q天马A行空Q
·
2024-02-20 01:29
数据结构
数据结构
算法
绪论
线性表
c++
数据结构
-哈夫曼树
介绍哈夫曼树,指带权路径长度最短的二叉树,通常用于数据压缩中什么是带权路径长度?假设有一个结点,我们为它赋值,这个值我们称为权值,那么从根结点到它所在位置,所经历的路径,与这个权值的积,就是它的带权路径长度。比如有这样一棵树,D权值为2从根结点到D的路径为2,则此结点带权路径长度为2x2=4当一棵二叉树所有结点的带权路径之和最小时,这棵树就被称为哈夫曼树如何构建假设已经有若干带权值的结点首先需要选
四零七丶
·
2024-02-20 00:56
数据结构
算法
数据结构
-最短路径(Dijkstra算法与Floyd算法)
介绍对于网图来说,最短路径是指两顶点之间经过的边上权值之和最少的路径,其路径上第一个点记为源点,最后一个为终点。计算最短路径有两个经典算法,即迪杰斯特拉(Dijkstra)算法与弗洛伊德(Floyd)算法。Dijkstra算法这个算法是从一个给定的顶点出发,不断计算更新此顶点到目标顶点的最短路径假如有这样一张网图如果我们要求顶点0到顶点1的最短距离,那无疑是1。由于1还与2,3相连,所以我们也可以
四零七丶
·
2024-02-20 00:56
算法
数据结构
数据结构
-线索二叉树
线索指将节点连接在一起的指针在二叉树中,除根结点外,其余节点均有一个指针指向它,如果有n个结点,那么一共有n-1个有指向的指针。而n个结点一共有2n个指针,那么就会有n+1个空指针。利用这n+1个空指针,令它们指向遍历二叉树时的前驱和后继,就是创建一棵线索二叉树以中序遍历为例这样一棵二叉树的中序遍历顺序是DBEAFCG如果我们把它看成一种线性结构,在这个遍历过程中,D空出来的两个指针可以指向它的前
四零七丶
·
2024-02-20 00:26
数据结构
数据结构
-二叉树深度计算及平衡二叉树(AVL树)
二叉树的深度指一棵树中结点到根结点的距离的最大值,一般令根结点为1,其子树深度为2,以此类推计算二叉树的深度一般利用后序遍历法(左->右->根),先递归求出左右子树深度,再取最大值加1返回给双亲树,这样求出的其实是树的高度,但由于深度与高度数值相等,所以可以直接利用即intdepth(BinaryTree*T){if(T==NULL)return0;//如果为空,深度返回0intLeftD=dep
四零七丶
·
2024-02-20 00:26
数据结构
数据结构
-邻接矩阵的创建与遍历
上篇文章已经介绍了邻接矩阵的具体作用与如果利用邻接矩阵寻找相邻顶点,这次介绍重点为邻接矩阵的创建与两种遍历方式邻接矩阵的创建其结构体需要能记录顶点、顶点数、边数及邻接矩阵,即#definemax100typedefstruct{intvex[max];//顶点(假设顶点为数字,如果为字符型则需要在创建邻接矩阵时进一步对应转换)intarc[max][max];//邻接矩阵intnumN,numE;
四零七丶
·
2024-02-20 00:26
数据结构
算法
数据结构
-双指针法
介绍双指针法是一种可以在O(n)时间复杂度内解决数组、链表、字符串等
数据结构
相关的问题的方法。核心思想为使用两个指针在不同位置遍历数组或链表,从而实现特定操作。
四零七丶
·
2024-02-20 00:25
算法
数据结构
Java EE
初阶
---计算机工作原理
1、冯诺依曼体系(VonNeumannArchitecture)现代的计算机,大多遵守冯诺依曼体系结构CPU中央处理器:进行算术运算和逻辑判断.存储器:分为外存和内存,用于存储数据(使用二进制方式存储)输入设备:用户给计算机发号施令的设备.输出设备:计算机个用户汇报结果的设备.针对存储空间:硬盘>内存>>CPU针对数据访问速度:CPU>>内存>硬盘认识计算机的祖师爷--冯诺依曼冯·诺依曼(John
茶虹
·
2024-02-20 00:10
Java
EE初阶
java
开发语言
Java EE
初阶
---网络原理之初识
1、网络发展史1.1独立模式独立模式:计算机之间相互独立;1.2网络互连随着时代的发展,越来越需要计算机之间互相通信,共享软件和数据,即以多个计算机协同工作来完成业务,就有了网络互连。网络互连:将多台计算机连接在一起,完成数据共享。数据共享本质是网络数据传输,即计算机之间通过网络来传输数据,也称为网络通信。根据网络互连的规模不同,可以划分为局域网和广域网。1.3局域网LAN局域网,即LocalAr
茶虹
·
2024-02-20 00:39
Java
EE初阶
开发语言
java
【JavaEE
初阶
】第八节.网络原理网络层和数据链路层,应用层
作者简介:大家好,我是未央;博客首页:未央.303系列专栏:JavaEE
初阶
每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!!!
未央.303
·
2024-02-20 00:37
JavaEE初阶
java-ee
java
网络原理
【Java成王之路】EE
初阶
第十五篇:(网络原理) 5
接上一节继续网络协议是分层的前面已经写了应用层传输层今天就来写网络层了网络层的核心协议就叫做:IP协议主要有两个版本:IPv4(主要介绍)IPv6关于IP地址涉及到一个很重要的问题这样地址不够用的问题该如何处理?1.动态分配IP2.NAT机制,网络地址替换3.IPv6机制知识补充
K稳重
·
2024-02-20 00:36
网络
服务器
运维
开发语言
java
【Java成王之路】EE
初阶
第十四篇:(网络原理) 4
上节回顾TCP的核心就是可靠性!!1.确认应答.保证可靠性的核心机制.针对传输数据以字节为单位进行编号.2.超时重传:①.传输的数据丢了②.ack应答报文丢了都要重传超时时间是动态变化的.500ms为单位3.连接管理(最爱考)三次握手状态转换LISTENESTABLISHED四次挥手CLOSE_WAITTIME_WAIT4.滑动窗口在可靠性的基础上,提升通信效率把数据进行批量发送,批量等待ACK窗
K稳重
·
2024-02-20 00:35
java
网络
servlet
udp
网络协议
【Java成王之路】EE
初阶
第十六篇:(网络原理) 6
上节回顾网络原理,网络层协议.IP协议.IP协议主要做的事情两方面:地址管理(通过IP地址来管理)路由选择路由选择:"路由"(路由这个词在计算机中也是有很多含义的)此处的"路由"指的是IP协议中的"路径规划功能"好比用地图.从A到达B如果经常开车或者坐车,就会有体会,地图会规划出好多路径,就可以根据不同的情况选择路径.这个过程就是一个路由选择的过程.IP协议中路由选择具体的过程,和地图这里的路径规
K稳重
·
2024-02-20 00:05
网络
服务器
运维
java
开发语言
【Java成王之路】EE
初阶
第十一篇:(网络原理) 1
上节回顾TCPsocket(核心:要掌握的两个类,Serversocket,socket)回显服务器(无法支持多个客户端并发执行)多线程回显服务器(针对每个连接(每个客户端)创建一个线程)线程池回显服务器(避免频繁创建/销毁线程)接着上一篇五层协议继续写.服务器代码实现importjava.io.IOException;importjava.net.DatagramPacket;importjav
K稳重
·
2024-02-20 00:35
网络
服务器
运维
java
开发语言
【Java成王之路】EE
初阶
第十二篇:(网络原理) 2
上节回顾网络原理,应用层传输层:端口号UDP校验和接上篇校验和继续实际使用的校验和算法有很多,其中比较常见的,crc,md5.crc:循环冗余校验md5,也是一种算法.md5应用场景非常多,用来作为校验,只是其中一个场景而已.本质上是一个"非对称的哈希算法"要了解校验和,是如何校验的TCP协议TCP协议段格式关于TCP的特性1.可靠性2.超时重传3.连接管理图中A表示的是客户端,B表示的服务器.服
K稳重
·
2024-02-20 00:35
网络
开发语言
服务器
运维
java
【Java成王之路】EE
初阶
第十三篇:(网络原理) 3
上节回顾TCP1.有连接2.可靠传输(可靠传输!=安全传输,可靠是指我发一个消息之后对方收没收到我心里有数)3.面向字节流4.全双工TCP可靠传输的机制特性:1.确认应答2.超时重传3.连接管理:如何建立连接:三次握手如果断开连接:四次挥手接上一篇继续:如何断开连接:四次挥手四次挥手的状态转换四次挥手一定是四次吗?是否可能是三次?有可能的!!后面会写到:延时应答和捎带应答.虽然ACK和FIN是不同
K稳重
·
2024-02-20 00:35
网络
服务器
运维
java
开发语言
【Java EE
初阶
二十】关于http(一)
1.初识httpHTTP最新的版本应该是HTTP/3.0,目前大规模使用的版本HTTP/1.1;下面来简单说明一下使用HTTP协议的场景:1、浏览器打开网站(基本上)2、手机APP访问对应的服务器(大概率)前面的TCP与UDP和http不同,HTTP的报文格式,主要分两个部分来看待:请求与响应,因为HTTP协议,是一种"一问一答"结构模型的协议,同时请求和响应的协议格式,是有所差异的1.1抓包工具
委婉待续
·
2024-02-20 00:34
JAVA
EE
初阶
http
网络
java-ee
java EE
初阶
— 计算机工作原理
文章目录1.操作系统2.操作系统的定位3.进程3.1进程的基本了解3.2操作系统内核是如何管理软件资源的3.3PCB里描述了进程的哪些特征3.3.1三个较为简单的特征3.3.2进程的调度属性4.内存管理1.操作系统操作系统是一个搞管理的软件。对上要给软件提供稳定的运行环境。对下要管理硬件设备。计算机操作系统:Windows(最熟悉的)Linux(程序猿必会的),特别适合进行开发和部署Mac(苹果电
与大师约会
·
2024-02-20 00:34
java
EE
从入门到进阶
驱动开发
java
EE
【Java EE
初阶
十九】网络原理(四)
4.数据链路层数据链路层也有很多种协议,其中一个比较常见常用的,就是“以太网协议”(通过网线/光纤,来通信所使用的协议叫做以太网协议,以太网是横跨数据链路层+物理层);4.1以太网数据帧格式帧头+载荷(IP数据报)+帧尾,以太网数据帧格式如下图所示:如上图所示:目的地址:6字节源地址:6字节这里的6个字节,不是IP地址,而是网络中的另一套地址体系,mac地址(物理地址)由于最开始搞网络的时候,网络
委婉待续
·
2024-02-20 00:04
JAVA
EE
初阶
java-ee
java
网络
【Java EE
初阶
十七】网络原理(二)
2.传输层2.2TCP协议2.2.2关于可靠传输4.滑动窗口前面的三个机制,都是在保证tcp的可靠性;TCP的可靠传输,是会影响传输的效率的.(多出了一些等待ack的时间,单位时间内能传输的数据就少了);滑动窗口,就让可靠传输对性能的影响,更少一些.TCP只要引入了可靠性,传输效率是不可能超过没有可靠性的UDP的,TCP这里的"效率机制"都是为了让可靠传输对传输效率的影响更小,尽可能的缩短和UDP
委婉待续
·
2024-02-20 00:02
JAVA
EE
初阶
网络
java-ee
119 Linux C++ 通讯架构实战 nginx安装和使用,重要配置文件说明
nginx是一个服务器软件,是用
C语言
开发的。nginx是开源的。nginx号称并发处理百万级别的TCP连接,非常稳定。热部署(运行的时候能升级),高度的模块化设计。自由许可证。
hunandede
·
2024-02-20 00:22
linux
架构
nginx
Java面试题之:MongoDB
MongoDB将数据存储为一个文档,
数据结构
由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他
faramita_of_mine
·
2024-02-20 00:52
The
interview
questions
mongodb
java
mapreduce
intellij
idea
面试题
挑战杯 python区块链实现 - proof of work工作量证明共识算法
文章目录0前言1区块链基础1.1比特币内部结构1.2实现的区块链
数据结构
1.3注意点1.4区块链的核心-工作量证明算法1.4.1拜占庭将军问题1.4.2解决办法1.4.3代码实现2快速实现一个区块链2.1
laafeer
·
2024-02-20 00:50
python
在windows下安装redis和在docker容器下安装redis
可以用来存储字符串、哈希结构、链表、集合,因此常用来提供
数据结构
服务。1.在主机上安装名称操作下载
故巷762
·
2024-02-20 00:42
redis细节操作
windows
redis
Docker | redis集群部署实战
环境准备Redis是
C语言
开发,安装Redis需要先将Redis的源码进行编译,编译依赖gcc环境安装gcc-c++yuminstallgcc-c++查看版本[root@---redis]#gcc-vUsingbuilt-inspecs.COLLECT_GCC
甜点cc
·
2024-02-19 23:08
Docker
Redis
docker
redis
1024程序员节
c语言
指针基础知识点
目录概述1.定义指针变量2.取址运算符"&"3.解引用运算符"*"4.指针操作5.空指针6.指针的比较7.二级指针(指向指针的指针)概述
C语言
中的指针是一种特殊的变量类型,用于存储内存地址。
御翮
·
2024-02-19 23:37
c语言
开发语言
后端
循环结构(
c语言
)
一、概述C语⾔是结构化的程序设计语⾔,这⾥的结构指的是【顺序结构】、【选择结构】、【循环结构】,C语⾔是能够实现这三种结构的,其实我们如果仔细分析,我们⽇常所⻅的事情都可以拆分为这三种结构或者这三种结构的组合。这里介绍循环结构,我们可以通过for循环、while循环和do-while循环实现循环结构二、for循环for循环结构是一种常用的循环结构,用于重复执行一段代码,直到满足某个条件才停止循环。
御翮
·
2024-02-19 23:07
c语言
开发语言
后端
c语言
的数据类型
C语言
是一种通用的编程语言,提供了多种数据类型来存储和操作不同类型的数据。以下是
C语言
中常用的数据类型:基本数据类型:int:用于存储整数,可以表示正数、负数和零。
御翮
·
2024-02-19 23:07
c语言
开发语言
后端
qsort函数(
c语言
库函数)
一、概述qsort函数是
C语言
标准库中的一个函数,用于对数组进行快速排序。
御翮
·
2024-02-19 23:07
c语言
算法
数据结构
排序算法
后端
开发语言
青蛙跳台阶问题(
c语言
递归函数实现)
一、问题概述假设有一只青蛙,每次可以跳一个台阶,也可以跳两个台阶,那么这只青蛙要跳上第n个台阶有多少种跳法。二、模拟递推我们研究这个问题前,可以先设想n为小一点的数的情况,再试着找出其中的规律。当我们多列举几种情况时,我们是不是发现1、2、3、5、8这样的规律有点像斐波那契数列。我们知道斐波那契数列可以通过递归解决,所以我们也可以试着用递归解决青蛙跳台阶问题。这里以青蛙跳到第三个台阶为例,推出递归
御翮
·
2024-02-19 23:36
c语言
算法
开发语言
基于Python3的
数据结构
与算法 - 01 复杂度和列表查找
一、时间复杂度定义:用来评估算法运行效率的一个式子。例如:此处的O(1)详单与一个时间单位接下来我们看下面两个式子:如果按照上面的定义,那么打印三次相当O(3),下面的循环相当于O(n2+1)但是实际不是这样的因为这里的时间单位并不是一个精确的时间单位,而是一个大概估计值;在计算机中,打印一次和打印三次的时间差不多;此处的时间复杂度对笔者自己而言有点类似于高数中的无穷小概念。当算法中出现循环规模使
一道秘制的小菜
·
2024-02-19 23:35
python
开发语言
算法
人工智能
计算机视觉
python——变量赋值的基本原理与运算符
1.变量赋值的基本原理python:根据数据的大小申请内存,数据需要多大内存就申请多大内存,不会出现内存不足和内存浪费的情况
c语言
:先申请数据定义类型的固有内存大小,再将数据存入,容易造成内存不足和内存浪费的情况
winkSmile
·
2024-02-19 23:34
C语言
指针
指针基础知识一、指针简介指针是一个特殊的变量,是
C语言
里面一个变量(特殊的变量),也用于保存具体值,特殊之处在于指针用于保存内存中的地址,(内存地址是什么?
热爱嵌入式的小许
·
2024-02-19 23:40
C语言指针
c语言
开发语言
Rust 初体验6
以下是把
C语言
与Rust作一初步对比,以见出其中差别。1.变量声明:
C语言
使用int、float等关键字来声明变量的类型,而Rust则使用类型推断,无需显式声明变量类型。
铅笔楼
·
2024-02-19 23:09
Rust
初体验
rust
开发语言
Rust中的Vector:多值存储的利器
在Rust中,Vector是一种非常强大而灵活的
数据结构
,用于存储多个相同类型的值。在本文中,我们将深入介绍Vector的使用方法、特性以及如何充分发挥其优势。什么是Vector?
好奇的菜鸟
·
2024-02-19 23:38
Rust
rust
算法
开发语言
C语言
:函数
(一)函数概述:问题导入我们想要设计一个学生信息管理的程序。经过分析,该程序可分解成学生信息录入、查询、修改、删除4个在功能上相对独立的部学生信息管理系统分。这样,就把这个大的问题分解成4个小问题来逐个解决,这就是模块化程序设计思想的初步,如图6-1所示。在设计复杂程序时,我们常常采用模块化的解决方法,将大问题拆分成多个小部分,每个部分再进一步细分成若干子模块,例如录入模块、查询模块、修改模块、删
Yuga...
·
2024-02-19 23:37
C语言
c语言
算法
学习
开发语言
并查集,真好用,一次AC不是梦!
今天阿辉来给大家介绍一种简洁而优雅的
数据结构
——并查集,不知道各位是否了解它,如果你在题解区见到并查集,想必各位一定见过类似下面这样的评论好了,阿辉也不卖关子了,开始咱们今天的学习吧!!!!
阿辉不一般
·
2024-02-19 23:57
算法与数据结构
算法
数据结构
c++
c语言
测试文章笔记-SQL3种优化方法
举例:1.使用索引替代全表扫描(索引:是帮助MysQL高效获取数据的
数据结构
(有序)。
麻辣菟头
·
2024-02-19 23:23
学习笔记
笔记
上一页
32
33
34
35
36
37
38
39
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他