图其实就是顶点和边的集合,所以说,图的存储本质就是存储图的顶点和边。 1. 邻接矩阵 顶点存储在一维数组中边存储在...[作者空间]
关于树的基本术语 祖先结点,子孙结点 双亲结点,孩子结点 兄弟结点 结点的度 分支节点(度为0),叶子节点(又称终...[作者空间]
1. 队列定义 通过队列的定义可以看出,队列除了按先后顺序都数据进行存储外,还需要两个指针,分别代表队头和队尾。 ...[作者空间]
1. 栈的定义 只允许在一段进行插入和删除操作的线性表。可以理解为只有一个口的窄瓶子,出入都只能通过一个口。同时,...[作者空间]
数组 数组的内存是连续的,不同的语言有着不同的分配内存规则。有的需要开始的时候指定长度,有的不需要(当数组的长度不...[作者空间]
1. 循环链表 与单链表基本无异,但有如下两点需要注意:(1)最后一结点的指针域必须指向头结点,这样才能循环(注意...[作者空间]
1. 静态链表定义 静态链表其实就是使用数组去代替指针以实现单链表。结点定义如下: 需要注意的是: 数组的第一个和...[作者空间]
问题来源 据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后,39个犹太人与Josephu...[作者空间]
算法相关GitHub持续更新,欢迎打脸~算法是从事程序开发人员永远绕不过去的一道门。虽然很多时候我们都会说,算法这...[作者空间]
一.什么叫直接选择排序? 在待排序记录1-n中选出最小的记录,将它与a[1]交换;第2趟,在待排序记录2-n中选出...[作者空间]
一.什么叫快速排序? 二.排序步骤: 对下列数组进行排序:(22,36,4,51,36,8,44,5,62,14,...[作者空间]
推导大O阶方法 用常数1取代所运行时间中的所有加法常数 在修改后的运行次数函数中,只保留最高阶项 如果最高阶存在且...[作者空间]
具体讲解和调试演示,请参看视频:如何进入google,算法面试技能全面提升指南 对于一个单项链接的链表,给定其中某...[作者空间]
前言 有朋友推荐一个新的算法练习网站leetcode,说北美的公司招人都是400题起步,国内公司招聘也经常用到,上...[作者空间]
基本思路: 1. 用最多K个元素的最大堆max_heap记录最终结果 2. 最大堆的max_heap的所有叶子节点...[作者空间]
C语言中,我们在使用数组时,会需要对数组进行插入和删除的操作,这时就需要移动大量的数组元素,但在C语言中,数组属于...[作者空间]
很多实际问题是NP完全问题, 那么求解有三种策略: (1)如果实际输入数据规模较小, 用指数级算法直接求解 (2)...[作者空间]
引言 自从今年春天选修了计算机图形学课程,这朵乌云就在头顶盘旋不散。始终弄不明白计算机图形学到底在研究什么,所谓的...[作者空间]
什么是二叉查找树? 二叉查找树又名二叉排序树、二叉搜索树,具有如下性质: 若左子树不为空,则左子树上的所有节点的值...[作者空间]
前言 坚持做算法练习对开发的好处是抽象能力变强,拿到一个需求能很快对其进行抽象,然后再用学过的设计模式相关知识进行...[作者空间]