摘要: 第八章数据结构小结数据结构这一章主要讲的是关于排序的各种方法,由于不同应用对于时间复杂度与空间复杂度的要求不同,用的排序方法也不同,主要的排序方法有插入排序,交换排序,选择排序与归并排序,其中插入排序分为直接插入排序,间接插入排序与希尔排序,交换排序分为冒泡排序与快速排序,选择排序分为简单选择排序与 阅读全文
posted @ 2019-06-07 23:02 谢德瀚 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 第七章主要学习了很多种查找方式,从最简单的线性表查找到树表的查找到散列表查找,不同的查找方式有不同的优点,下面根据练习来实际应用这些知识。 这个问题的任务很简单:将一个不同的正整数序列插入哈希表,并输出输入数字的位置。散列函数定义为h(key)=key%tsize,其中tsize是散列表的最大大小。 阅读全文
posted @ 2019-05-31 19:06 谢德瀚 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 本章内容学习了图的结构及其应用,今天就学习的图的应用中的两种搜索方法“深度优先搜索”和”广度优先搜索“及对应的练习来给大家分享一下自己的心得。 题目如下: 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点 阅读全文
posted @ 2019-05-18 02:53 谢德瀚 阅读(261) 评论(1) 推荐(1) 编辑
摘要: 第五章主要学习的是树与二叉树,有利用数组进行存储的顺序二叉树,也有利用链表进行存储的链式二叉树,在这个基础上又展开了二叉树的遍历。 二叉树的遍历分为前序遍历,中序遍历以及后序遍历,主要区别在于遍历的顺序不同。 前序遍历: (1)访问根结点。 (2)前序遍历左子树。 (3)前序遍历右子树 。 中序遍历 阅读全文
posted @ 2019-05-03 17:01 谢德瀚 阅读(175) 评论(1) 推荐(0) 编辑
摘要: 在第四章的学习中,主要学习了串和数组,相对于上学期学习过的数组,串的内容相对比较难,在关于串的应用方面也遇到了一些问题。 给定一个主串S(长度<=10^6)和一个模式T(长度<=10^5),要求在主串S中找出与模式T相匹配的子串,返回相匹配的子串中的第一个字符在主串S中出现的位置。 先上题目 输入格 阅读全文
posted @ 2019-04-14 20:00 谢德瀚 阅读(276) 评论(1) 推荐(0) 编辑
摘要: 第三章主要学习了关于栈和队列的知识,知道了有关栈和队列的初始化和基本操作。栈是只在一头进行插入与删除操作的数据结构,而队列是可以在两头进行插入与删除操作的数据结构。此外栈和队列分别可以分为链栈与顺序栈,链队与顺序队列。栈的特点是先进后出,队列的特点是先进先出。 在这里分享有关栈的函数: #inclu 阅读全文
posted @ 2019-03-30 00:46 谢德瀚 阅读(160) 评论(3) 推荐(0) 编辑
摘要: 1. 第二章的学习,让我对顺序表和链表有了一定的认识,它们的不同主要在于地址值的连续性不同。线性表的存储地址是连续的,也就是将表中的结点依次存放在计算机内存中的一组连续的存储单元,而链表的存储地址不一定是连续的。链表的每一个结点含有数据域和指针域,指针域指向下一个结点,数据域中则存储着数据信息。在很 阅读全文
posted @ 2019-03-17 19:55 谢德瀚 阅读(178) 评论(1) 推荐(0) 编辑