数据结构与算法
文章平均质量分 88
LZacking.
这个作者很懒,什么都没留下…
展开
-
数据结构与算法文章列表
前言数据结构与算法文章列表主要内容包括:稀疏数组、单向队列、环形队列、单向链表、双向链表、环形链表、约瑟夫问题、栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式、递归与回溯、迷宫问题、八皇后问题、算法的时间复杂度、冒泡排序、选择排序、插入排序、快速排序、归并排序、希尔排序、基数排序(桶排序)、堆排序、排序速度分析、二分查找、插值查找、斐波那契查找、散列、哈希表、二叉树、二叉树与数组转换、二叉排序树(BST)等(正在更新)。数据结构与算法文章列表数据结构与算法:稀疏sparsearray数组原创 2021-02-14 11:37:23 · 2283 阅读 · 0 评论 -
数据结构与算法:8种算法经典问题
本文主要讲解8种算法经典问题原创 2023-07-21 00:37:52 · 1415 阅读 · 0 评论 -
数据结构与算法:10种常见算法
本文主要讲解10种常见算法原创 2023-07-14 20:34:21 · 426 阅读 · 0 评论 -
数据结构与算法:查找算法
前言本文主要讲解查找算法数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)查找算法介绍在 java 中,我们常用的查找有四种:线性查找算法二分查找算法插值查找算法斐波那契查找算法(二)线性查找算法有一个数列: {1, 8, 10, 89, 1000, 1234} ,判断数列中是否包含此名称【顺序查找】要求:如果找到了,就提示找到,并给出下标值代码实现:package com.lzacking.search;public class Seq原创 2021-03-28 18:50:02 · 292 阅读 · 0 评论 -
数据结构与算法:排序算法(二)
前言本文主要讲解排序算法数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)排序算法的介绍排序也称排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程常见的排序算法有:冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、基数排序等(二)快速排序(1)快速排序法介绍快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要 Ο(nlogn) 次比较。在最坏状况下则需要 Ο(n2) 次比较,但这种状况原创 2021-03-28 17:54:54 · 218 阅读 · 0 评论 -
数据结构与算法:排序算法(一)
前言本文主要讲解排序算法数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)排序算法的介绍排序也称排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程常见的排序算法有:冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、基数排序等(二)冒泡排序冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有原创 2021-03-28 16:47:40 · 356 阅读 · 0 评论 -
数据结构与算法:图
前言本文主要讲解图、图的深度优先遍历、图的广度优先遍历数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)图基本介绍(1)为什么要有图(为什么要使用图这种数据结构)在线性结构中,数据元素之间满足唯一的线性关系,每个数据元素(除第一个和最后一个外)只有一个直接前趋和一个直接后继在树形结构中,数据元素之间有着明显的层次关系,并且每个数据元素只与上一层中的一个元素(parent node)及下一层的多个元素(孩子节点)相关如果我们需要多对多的关系时,我们原创 2021-03-28 14:00:29 · 222 阅读 · 0 评论 -
数据结构与算法:树结构的基础部分
前言本文主要讲解二叉树,顺序存储二叉树,线索化二叉树数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)二叉树(1)为什么使用树1)分析数组优缺点优点:按照索引查询元素速度快、能存储大量数据、按照索引遍历数组方便缺点:根据内容查找元素速度慢、数组的大小一经确定不能改变、数组只能存储一种类型的数据、增加、删除元素效率慢、未封装任何方法,所有操作都需要用户自己定义。数组示意图:2) 分析链表的优缺点优点:添加、删除比较方便缺点:查找某个值时,需要从头节点原创 2021-03-27 13:08:08 · 342 阅读 · 0 评论 -
数据结构与算法:多路查找树
前言本文主要讲解B树、2-3树、B+树、B*树数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)二叉树与B树(1)二叉树的问题分析二叉树的操作效率较高,但是也存在问题, 请看下面的二叉树1)二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如 1 亿), 就存在如下问题:2)问题 1:在构建二叉树时,需要多次进行 i/o 操作(海量数据存在数据库或文件中),节点海量,构建二叉树时,速度有影响3)问题 2:节点海量,也会原创 2021-03-25 20:47:17 · 209 阅读 · 0 评论 -
数据结构与算法:树结构实际应用
前言本文主要讲解哈希表(散列)数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)哈希表的基本介绍原创 2021-03-21 16:23:03 · 540 阅读 · 0 评论 -
数据结构与算法:哈希表
前言本文主要讲解哈希表(散列)数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)哈希表的基本介绍散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。(二)哈希表(散列)应用案例有一个公司,当有新的员工来报道时,要求将该员工的信息加入(id,性别,年龄,名字,住址…),当输入该员原创 2021-03-19 20:31:47 · 198 阅读 · 0 评论 -
数据结构与算法:递归
前言本文主要讲解递归、迷宫问题、八皇后问题数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)递归应用场景看个实际应用场景迷宫问题:假设一个迷宫,只有一个入口和一个出口。如果从迷宫的入口到达出口,途中不出现行进方向错误(方向错误:撞墙),则得到一条路线。(二)递归的概念简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量。递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。(三)递归调用机制回顾一下递归调用机制打印问题阶乘问题使原创 2021-03-18 19:39:09 · 247 阅读 · 0 评论 -
数据结构与算法:栈
前言本文主要讲解栈,包括栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)栈的介绍(1)栈的英文为(stack)(2)栈是一个先入后出(FILO-First In Last Out)的有序列表。(3)栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)(4)根据栈的定义可原创 2021-02-20 12:20:57 · 469 阅读 · 0 评论 -
数据结构与算法:链表
前言本文主要讲解链表,包括单向链表,双向链表,环形单链表,约瑟夫问题数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)链表(Linked List)介绍链表是有序的列表,但是它在内存中是存储如下小结:(1)链表是以节点的方式来存储,是链式存储(2)每个节点包含 data 域, next 域:指向下一个节点.(3)如图:发现链表的各个节点不一定是连续存储.(4)链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单链表(带头结点) 逻辑结构示意原创 2021-02-19 11:20:02 · 580 阅读 · 0 评论 -
数据结构与算法:队列
前言本文主要讲解队列,使用数组模拟单向队列和环形队列数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)队列介绍队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出(二)数组模拟队列思路分析图队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图, 其中maxSize 是该队列的最大容量。因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front及rear分别记原创 2021-02-15 17:46:55 · 424 阅读 · 1 评论 -
数据结构与算法:稀疏sparsearray数组
前言本文主要讲解稀疏sparsearray数组数据结构与算法文章列表数据结构与算法文章列表: 点击此处跳转查看目录(一)需求编写的五子棋程序中,有存盘退出和续上盘的功能分析问题:因为该二维数组的很多值是默认值0, 因此记录了很多没有意义的数据,所以使用稀疏数组来解决这个问题。(二)基本介绍当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方法是:(1)记录数组一共有几行几列,有多少个不同的值 (稀疏数组一共就3列)(2)把具有不原创 2021-02-14 11:26:36 · 593 阅读 · 0 评论