手机版
热门标签
站点地图
我要投稿
广告合作
联系我们
搜 索
广告位招租
广告位招租
切换导航
首页
编程教程
编程导航
编程百科
编程问答
编程博文
编程实例
硬件设备
网络运营
软件教程
移动数码
办公软件
操作系统
人工智能
栏目导航
▸ 编程语言
▸ 前端开发
▸ 移动开发
▸ 开发工具
▸ 程序设计
▸ 行业应用
▸ CMS系统
▸ 服务器
▸ 数据库
公众号推荐
微信公众号搜
"智元新知"
关注
微信扫一扫可直接关注哦!
子栏目导航
Linux
Windows
CentOS
Ubuntu
Nginx
WebService
Scala
Memcache
Apache
Redis
Docker
Bash
Azure
Tomcat
LNMP
Shell
Ansible
KVM虚拟机
数据结构
鸿蒙系统
宝塔面板
服务器运维
网络安全
编程之家
数据结构
[数据结构与算法]堆排序 Heap Sort
堆的定义n个元素的序列{k1,k2,…,kn}当且仅当满足下列关系之一时,称之为堆。情形1:ki 2i 且ki 2i+1 (最小化堆或小顶堆)情形2:ki >= k2i 且ki >= k2i+1 (最大化堆或大顶堆)其中i=1,2,…,n/2向下取整; 若将和此序列对应的一维数组(即以一维数组作此序列的存储结构)看成是一个完全二叉树,
作者:厦门德仔 时间:2022-11-25
【啊哈!算法】算法6:只有五行的Floyd最短路算法
暑假,小哼准备去一些城市旅游。有些城市之间有公路,有些城市之间则没有,如下图。为了节省经费以及方便计划旅程,小哼希望在出发之前知道任意两个城市之前的最短路程。 上图中有4个城市8条公路,公路上的数字表示这条公路的长短。请注意这些公路是单向的。我们现在需要求任意两个城市之间的最短路程,也就是求任意两个点之间的最短路径。这个问题这也被称为“多源最短路径”问题。 现在需要一个
作者:厦门德仔 时间:2022-11-25
自己动手实现java数据结构九 跳表
1. 跳表介绍 在之前关于数据结构的博客中已经介绍过两种最基础的数据结构:基于连续内存空间的向量(线性表)和基于链式节点结构的链表。 有序的向量可以通过二分查找以logn对数复杂度完成随机查找,但由于
作者:小熊餐馆 时间:2021-08-13
浅谈栈和队列
栈 栈模型 栈(stack)是限制对元素的插入(push)和删除(pop)只能在一个位置上进行的表,该位置是表的末端,叫做栈的栈顶(top)。 栈的基本操作只有两种,压入栈(push)和弹出栈顶(po
作者:Virtuals 时间:2021-05-02
(java实现)单链表
什么是单链表 在了解单链表之前,你知道什么是链表吗?如果你不知道什么是链表,可以看看我的这篇博客<链表-LinkList> 单链表是链表的其中一种基本结构。一个最简单的结点
作者:Virtuals 时间:2021-05-02
(java实现)顺序表-ArrayList
什么是顺序表 顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。 在使用顺序表存储数据前,会先申请一段连续的内存空间(即数组),然后把数组依次存入
作者:Virtuals 时间:2021-05-02
(java实现)双向循环链表
什么是双向循环链表 在了解双向循环链表之前,如果对链表还没有一个清晰的概念,建议你看看 "单链表" 和 "单向循环链表" ,这有利于你更好的理解下面的内容。(废
作者:Virtuals 时间:2021-05-02
链表-LinkList
什么是链表 维基百科:链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。由于不必须按顺序存
作者:Virtuals 时间:2021-05-02
【数据结构】键树
键树的基本概念 键树又称数字查找树(Digital Search Tree)。 它是一棵度大于等于2的树,树中的每个结点中不是包含一个或几个关键字,而是只含有组成关键字的符号。 例如,若关键字是数值,
作者:编程之家 时间:2021-02-09
【数据结构】绪论
[TOC] 基本概念 数据: 数据 是对客观事物的符号表示,在计算机科学中指所有能输入到计算机中并被计算机程序处理的符号的总称。数据的含义很广泛,如图像、声音等都可以通过编码而归之为数据的范畴。 数据
作者:编程之家 时间:2021-02-09
【数据结构】证明法
[TOC] 反证法 基本概念: 一般地,假设原命题不成立(即 在原命题的条件下,结论不成立),经过正确的推理,最后得出矛盾,因此说明假设错误,从而证明原命题成立,这样的证明方法叫做 反证法 。 基本操
作者:编程之家 时间:2021-02-09
数据结构与算法系列之目录
最近抽空整理了"数据结构和算法"的相关文章。在整理过程中,对于每种数据结构和算法分别给出"C"、"C++"和"Java"
作者:编程之家 时间:2021-02-09
【数据结构】数组
[TOC] 矩阵在计算机图形学、工程计算中占有举足轻重的地位。在数据结构中考虑的是如何用最小的内存空间来存储同样的一组数据。所以,我们不研究矩阵及其运算等,而把精力放在如何将矩阵更有效地存储在内存中,
作者:编程之家 时间:2021-02-09
【数据结构】时间复杂度
[TOC] 大O表示法:算法的时间复杂度通常用大O符号表述,定义为T[n] = O(f(n))。称函数T(n)以f(n)为界或者称T(n)受限于f(n)。 如果一个问题的规模是n,解这一问题的某一算法
作者:编程之家 时间:2021-02-09
[操作系统]操作系统中断机制
1.当中断发生时,cpu立即进入核心态 2.当中断发生后,当前进程进入暂停状态,操作系统内核对中断进行处理 3.对于不同的中断信号,会进行不同的处理 有了中断,才能实现程序的并发运行,cpu从用户态转
作者:编程之家 时间:2021-02-06
[日常] 浏览器前进后退与数据结构的思想
一张图保存一下 红点是当前地址 白色箭头是新打开页面 黑色箭头是后退页面 栈的思想 , 后退就是栈的索引往下移动 , 前进就是往上移动 , 点击新页面就是当前索引位置往上的所有元素都删除 , 然后再插
作者:编程之家 时间:2021-02-06
[算法] 开放寻址法解决哈希冲突方式
开放寻址法:又称开放定址法,当哈希冲突发生时,从发生冲突的那个单元起,按照一定的次序,从哈希表中寻找一个空闲的单元,然后把发生冲突的元素存入到该单元。这个空闲单元又称为开放单元或者空白单元。开放寻址法
作者:编程之家 时间:2021-02-06
二叉树的基本概念介绍与代码实现多图+代码
@ 树的基本概念 图1 树的结点 结点:使用树结构存储的每一个数据元素都被称为“结点”。例如,上图1中,数据元素 1 就是一个结点; 父结点(双亲结点)、子结点和兄弟结点:对于上图1中的结点 1,2,
作者:编程之家 时间:2021-01-30
史上最全单链表的增删改查反转等操作汇总以及5种排序算法(C语言)
1.准备工作 首先包含头文件,定义链表结构体,产生随即链表的范围,定义全局头尾节点。 #include <stdio.h> #include <stdlib.
作者:编程之家 时间:2021-01-30
单链表的冒泡,快排,选择,插入,归并等多图详解
上节介绍了链表的基本操作史上最全单链表的增删改查反转等操作汇总以及5种排序算法(C语言) 这节介绍链表的5种排序算法。 @ 0.稳定排序和原地排序的定义 稳定排序: 假定在待排序的记录序列中,存在多个
作者:编程之家 时间:2021-01-30
查找算法之顺序查找,折半查找,二叉查找树
查找表的概念 查找表是由同一类型的数据元素构成的集合。例如电话号码簿和字典都可以看作是一张查找表。 在查找表中只做查找操作,而不改动表中数据元素,称此类查找表为静态查找表;反之,在查找表中做查找操作的
作者:编程之家 时间:2021-01-30
图解线索二叉树与双向线索二叉树附源码
线索二叉树的概念 当我们对普通的二叉树进行遍历时需要使用栈结构做重复性的操作。线索二叉树不需要如此,在遍历的同时,使用二叉树中空闲的内存空间记录某些结点的前趋和后继元素的位置(不是全部)。这样在算法后
作者:编程之家 时间:2021-01-30
带你一文看懂二叉树的先中、后序遍历以及层次遍历图解+递归/非递归代码实现
先序遍历 先序遍历规则 先序遍历的核心思想:1.访问根节点;2.访问当前节点的左子树;3.若当前节点无左子树,则访问当前节点的右子树;即考察到一个节点后,即刻输出该节点的值,并继续遍历其左右子树。(根
作者:编程之家 时间:2021-01-30
矩阵的三种存储方式---三元组法 行逻辑链接法 十字链表法
在介绍矩阵的压缩存储前,我们需要明确一个概念:对于特殊矩阵,比如对称矩阵,稀疏矩阵,上(下)三角矩阵,在数据结构中相同的数据元素只存储一个。 三元组顺序表 稀疏矩阵由于其自身的稀疏特性,通过压缩可以大
作者:编程之家 时间:2021-01-30
2020中兴捧月傅里叶派记录
前段时间看到了同学转发的中兴通讯的比赛链接,之前也没有参加过算法类的比赛,这次打算报着试一试的态度参加下,增加下经验。在初步看了几个门派的题目简介后,发现只有傅里叶派比较适合自己,所以最终选择了傅里叶
作者:编程之家 时间:2021-01-30
树的双亲表示法,孩子表示法以及孩子兄弟表示法
如下图所示,这是一棵普通的树,该如何存储呢?通常,存储具有普通树结构数据的方法有 3 种: 双亲表示法; 孩子表示法; 孩子兄弟表示法; 图1 树的双亲表示法 双亲表示法采用顺序表(也就是数组)存储普
作者:编程之家 时间:2021-01-30
C语言哈希表uthash的使用方法详解附下载链接
uthash简介 由于C语言本身不存在哈希,但是当需要使用哈希表的时候自己构建哈希会异常复杂。因此,我们可以调用开源的第三方头文件,这只是一个头文件:uthash.h。我们需要做的就是将头文件复制到您
作者:编程之家 时间:2021-01-30
字符串的三种存储方式
在数据结构中,字符串要单独用一种存储结构来存储,称为串存储结构。这里的串指的就是字符串。无论学习哪种编程语言,操作最多的总是字符串。我们平常使用最多的存储结构无疑是利用定长数组存储。但是这种存储结构需
作者:编程之家 时间:2021-01-30
数据结构学习一逻辑结构和存储结构
逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据,独立于计算机存在。·逻辑结构分为以下四种: 1、线性结构 数据元素之间只存在一对一的关系 2、集合结构 数据元素之间除了“同属一个
作者:编程之家 时间:2021-01-12
数据结构学习-带头结点的单链表就地逆置
所谓“就地是指辅助空间复杂度为O(1)。 解法一:将头结点摘下,然后从第一结点开始,依次前插入到头结点的后面(头插法),直到最后一个结点为止。 代码如下 解法二: 通过若干操作将指针反转达到逆置的目的
作者:编程之家 时间:2021-01-12
上一页
1
2
3
4
5
6
7
8
下一页
小编推荐
热门标签
更多
python
JavaScript
java
HTML
reactjs
C#
Android
CSS
Node.js
sql
r
python-3.x
MysqL
jQuery
c++
pandas
Flutter
angular
IOS
django
linux
swift
typescript
路由器
JSON
路由器设置
无线路由器
h3c
华三
华三路由器设置
华三路由器
电脑软件教程
arrays
docker
软件图文教程
C
vue.js
laravel
spring-boot
react-native