本文根据《大话数据结构》一书,实现了Java版的顺序查找、折半查找、插值查找、斐波那契查找。注:为与书一致,记录均从下标为1开始。顺序表查找顺序查找       顺序查找(Sequential Search):从第一个到最后一个记录依次与给定值比较,若相等则查找成功。  顺序查找优化:设置哨兵,可以避免每次循环都判断是否越界。在数据
编程之久除了算法和数据结构,什么也不属于我们。未完待续。。。
原创 2021-07-19 14:13:46
101阅读
第一章: 数据结构绪论 术语 数据:是描叙客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合 数据元素: 是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被成为记录。 数据项:一个数据元素可以由若干个数据项组成。数据项是数据不可分割的最小单位。 ...
转载 2021-09-16 17:25:00
181阅读
2评论
大话数据结构 大话设计模式 head first设计模式 Java核心技术 卷1 深入理解Java虚拟机(JVM高级特性与最佳实践) 图解HTTP大话数据结构数据结构介绍, 算法推导大O阶的方法, 线性表结构的介绍,顺序结构与链式结构差异, 栈与队列的应用, 串的朴素模式匹配、 KMP 模式匹配算法, 树结构的介绍, 二叉树前中后序遍历,线索二叉树,赫夫曼树及应用, 图结掏的介绍,图的深度、广度遍
因本人最近在恶补数据结构,学识经验有限,如有不正之处望读者指正,不胜感激;也望借此平台留下学习笔记以温故而知新。这一篇博客主要是最近刚开始接触大话数据结构一书,写的通俗易懂,很多图表帮忙理解,所以讲随手笔记分享至此,希望对您有所帮助。数据结构绪论数据结构的定义:逻辑结构:集合、线性结构、树形结构、图形结构物理结构:顺序、链接算法绪论分析算法运行时间时,要把基本操作的数量与输入规模关联起来,即将基本
本文根据《大话数据结构》一书,实现了Java版的快速排序。更多:数据结构与算法合集基本概念  基本思想:在每轮排序中,选取一个基准元素,其他元素中比基准元素小的排到数列的一边,大的排到数列的另一边;之后对两边的数列继续进行这种排序,最终达到整体有序。  实现代码  根据上述基本思想,可以先写出快速排序最核心的代码:对于数组a中从下标为low至下标为high的元素,选取一个基准元素(记为pivotK
大话数据结构笔记-第一、二章主要内容1.数据结构绪论一、基本概念和术语二、逻辑结构和物理结构三、数据类型2.算法一、算法的特性二、算法设计的要求三、算法效率的度量方法四、函数的渐近增长五、算法时间复杂度六、常见的时间复杂度七、最坏情况与平均情况八、算法空间复杂度 主要内容数据结构介绍 算法推导大O阶的方法 线性表结构的介绍 顺序结构与链式结构的介绍 二叉树前中后序遍历 线索二叉树 哈夫曼树及应用
1引言本文将从《大话数据结构》的内容、特点以及评价三个方面进行介绍,以帮助网友了解这本书。2内容本书以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。内容有以下板块:第一章:数...
原创 2022-01-10 14:03:39
212阅读
串​​总目录​​​​前言​​​​五、串​​​​5.1串的定义​​​​5.2串的比较​​​​5.3串的抽象数据类型​​​​5.4串的存储结构​​​​5.4.1串的顺序存储结构​​​​5.4.2串的链式存储结构​​​​5.5朴素的模式匹配算法​​​​实例​​​​5.6 KMP模式匹配算法​​​​什么是KMP?​​​​为什么要用KMP算法?​​​​KMP模式匹配算法实现​​​​5.7总结​​总目录​​一
原创 2023-01-11 11:15:14
231阅读
对于任何从事计算机编程或数据处理的人来说,数据结构是一个非常重要的主题。数据结构是组织和管理数据的方式,它可以直接影响到程序的性能和可维护性。在本文中,我将介绍一种常见的数据结构——树,并使用Python编写一些示例代码来演示树的操作和用途。 # 什么是树? 树是一种非常常见的数据结构,它以层次结构的方式组织数据。树由节点组成,每个节点可以有零个或多个子节点。树的顶部节点称为根节点,树的最底部
原创 2023-08-29 08:13:48
46阅读
这个好像可以,看这个。。。但是没更完啊!换一个!我裂开了,还是回去看那个小甲鱼的罗里吧嗦的教程吧!越听越晕,wo TM还是不看视频了,直接看书吧,《大话数据结构》! 文章目录第一章:数据结构绪论逻辑结构与物理结构(存储结构)顺序存储结构与链式存储结构原子类型数据结构类型数据(39)抽象数据类型(40)第二章:算法事前分析估算方法(53)分析算法运行时间:将基本操作数量表示成输入规模的函数(54)
转载 2023-09-21 09:26:18
57阅读
1引言本文将从《大话数据结构》的内容、特点以及评价三个方面进行介绍,以帮助网友了解这本书。2内容本书以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。内容有以下板块:第一章:数...
原创 2022-01-05 14:41:28
339阅读
快乐的时间总是短暂的,问题和烦恼总是会不经意的又来缠着你,当然这次不是系统问题。而是任务来了,急急忙忙的召开的紧急会议。老子一惊,完蛋了,老子好不容易弄好电脑的系统,准...
原创 2022-07-28 07:02:57
95阅读
快乐的时间总是短暂的, 问题和烦恼总是会不经意的又来缠着你,当然这次不是系统问题。而是任务来了,急急忙忙的召
1 线性表的链式存储结构, 头指针指向每一个结点, 表明, 头指针不是第一个结点, 还有就是头指针可以指向头结点, 头结点 再指向第一个结点 2 散列表(哈希表): 采用散列技术将记录存储在一块连续的存储空间中, 这块空间就称为散列表或哈希表 想想链表, 这个名词就好理解了, 大白话这个技术就是好比
原创 2月前
26阅读
1.与树相关的常见概念1)树的定义对树的定义,还需要强调两点:1)n>0的时候,根节点是唯一的,不可能存在多个根节点2)m>0的时候,子树的个数没有限制,但他们一定都shi是互不相交的子树2.树结构中的常用概念1)结点度结点拥有的子树数目称为结点的度(Degree);内部的结点:我们可以称为子结点,也可以称之为B,D,G,H,I是A的子树...
原创 2023-03-08 19:49:56
161阅读
本文根据《大话数据结构》一书,实现了Java版的一个简单的散列表(哈希表)。基本概念对关键字key,将其值存放在f(key)的存储位置上。由此,在查找时不需比较,只需计算出f(key)便可直接取得所查记录。这个函数 f() 就叫做散列函数,按这个思想建立的表称为散列表。散列技术即是一种存储方法,又是一种查找方法:  存储过程:根据关键字key,算出f(key),将记录存放在f(key)的位置上; 
本文根据《大话数据结构》一书,实现了Java版的堆排序。更多:数据结构与算法合集基本概念  堆排序种的堆指的是数据结构中的堆,而不是内存模型中的堆。  堆:可以看成一棵完全二叉树,每个结点的值都大于等于(小于等于)其左右孩子结点的值,称为大顶堆(小顶堆)。大顶堆(左)与小顶堆(右)  堆排序的基本思想:将带排序的序列构造成大顶堆,最大值为根结点。将根结点与最后一个元素交换,对除最大值外的剩下n-1
目录 数据结构的基本概念和术语1.数据2.数据元素3.数据项4.数据对象逻辑结构和物理结构抽象数据类型总结在这里说一下,大学的时候学习过数据结构,但是根本不深入,现在重新学习一遍数据结构和算法知识,主要是为了明年的秋招做准备,因此将最近学习过的知识在博客上重写一遍,加深记忆,也是锻炼自己的思维能力,提升代码量。因为大话数据结构这本书是基于C语言来描述的,因此对于大部分学习过C、C++、C
文章目录第二章 - 算法第三章 - 线性表3.1 单链表3.1.1 相关概念3.1.2 读取3.1.3 插入3.1.4 删除3.1.5 整表创建3.1.6 整表删除3.2 静态链表3.2.1 相关概念3.2.2 插入3.2.3 删除3.2.4 优缺点3.3 循环链表3.3.1 相关概念3.3.2 双表合并3.4 双向链表3.4.1 相关概念3.4.2 插入3.4.3 删除第四章 栈与队列4.1栈
转载 2023-11-16 13:49:15
45阅读
  • 1
  • 2
  • 3
  • 4
  • 5