
data structure
文章平均质量分 85
爱看动漫的李皮皮
一个脑子不好使热爱学习的人, 欢迎关注我的微信公众号“李皮皮窝”~
展开
-
严蔚敏老师版《数据结构》笔记之基本概念和术语
1. 什么是数据结构 如果要写好一个程序,必须分析待处理的对象的特性和对象之间的关系,这是“数据结构”形成和发展的背景。 “数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科”。 2. 基本概念和术语: (1) 数据(data):在CS中是指所有能输入到计算机中并被计算机程序处理的符号的总称。 (2)数据元素(data element)...原创 2018-09-07 01:40:25 · 12083 阅读 · 0 评论 -
严蔚敏老师版《数据结构》笔记之算法
1. 什么是算法? 是对特定问题求解的步骤 2. 算法的5个重要特性: 有穷性、确定性(读者阅读时不会产生二义性)、可行性、输入(至少0个)、输出(至少1个) 3. 算法设计的要求: 正确性(代码无误、几组输入能够得到满足要求的结果、对典型、苛刻而带有刁难性的数据能够得出满足要求的结果、一切合法输入都能得到满足要求的结果)、可读性、健壮性(输入非法数据作出适当反应)、效率与低...原创 2018-09-07 02:46:07 · 1507 阅读 · 0 评论 -
Coursera北大《数据结构基础》之概论
刷书有点看不下去了,打算换课程试试。 Mooc上有一样的内容,更喜欢Coursera。 本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删 程序 = 数据结构 + 算法 1. 问题求解 数据结构与算法是围绕问题求解进行的。那么什么是问题求解的过程呢? 我们要明确编写计算机程序的目的是为了解决实际应用问题。面对一个问题,首先,我们要...原创 2018-10-31 21:58:16 · 980 阅读 · 0 评论 -
Coursera北大《数据结构基础》之线性表
本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删 线性结构是最简单而应用最广泛的一种数据结构,在不同的场合会采取不同的存储结构和实现方法。 本模块将介绍一种简单的线性结构——线性表,就是同类型的元素排成的一个线性序列,并且介绍了线性表的两种实现方法,即顺序表和链表。 重点:线性结构的逻辑定义,线性表的各种分类,顺序表、链表的定义和相关操作。 难点...原创 2018-11-05 09:51:10 · 498 阅读 · 0 评论 -
Coursera北大《数据结构基础》之栈与队列
本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删 根据下图,通过访问形式划分的线性结构中,栈和队列属于顺序访问;按操作方式分,线性结构又可以划分为线性表、栈(LIFO)和队列(FIFO)三种形式,线性表在Coursera北大《数据结构基础》之线性表中已经学习过,这里进行栈和队列的学习。 目录 1. 栈(stack) 1.1 栈的实现方式 ...原创 2018-11-05 23:14:59 · 730 阅读 · 0 评论 -
Coursera北大《数据结构基础》之字符串
本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删 目录 1. 字符串基本概念 1.1 什么是字符串 1.2 字符编码 1.3 字符串数据类型 1.4 子串(substring) 2. 字符串的存储结构 3. 字符串运算的算法实现 4. 字符串的模式匹配(pattern matching) 4.1 朴素算法(Brute Force/Naive)...原创 2018-11-06 00:58:32 · 753 阅读 · 0 评论 -
Coursera北大《数据结构基础》之二叉树
本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删 目录 1. 二叉树(binary tree)概念 1.1 二叉树定义 1.2 二叉树的五种形态 1.3 二叉树相关术语 1.4 几种特殊的二叉树 1.4.1 满二叉树 1.4.2 完全二叉树 1.4.3 扩充二叉树 1.4.4 表达式二叉树 1.5 二叉树主要性质 2. 二叉树的抽象数据类...原创 2018-11-13 06:49:47 · 1542 阅读 · 1 评论