数据结构与算法
或许对了
我曾七次鄙视自己的灵魂
展开
-
分治算法
一、基本概念 在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)…… 任何一个可以用计算机求解的问题所需的计算时间...转载 2019-12-31 16:26:50 · 129 阅读 · 0 评论 -
数据结构:二叉查找树
定义 二叉查找树是一棵特殊的二叉树,它在二叉树的基础上附加了该性质:对于树中的每个结点X,它的左子树中所有关键字都小于或等于X的关键字,而它的右子树中所有关键字都大于或等于X的关键字。如下图所示: 查找树的设计目标都是减少最坏情况下单次操作的时间,但是由于查找树的典型应用经常需要执行一系列的查找操作,因此此时更关心的性能指标是所有这些操作总共需要多少时间。对于此类应用,更好的目标就是降低...转载 2019-12-25 19:20:22 · 143 阅读 · 0 评论 -
【转载】 轻松搞定面试中的二叉树题目
版权所有,转载请注明出处,谢谢! 感谢原作者分享,建议查看原贴 http://blog.csdn.net/walkinginthewind/article/details/7518888 树是一种比较重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒。二叉树是递归定...转载 2019-09-06 18:16:40 · 97 阅读 · 0 评论 -
【转载】一看就懂的冒泡排序和【3】步深度优化法
如需转载,请标明地址 前言:各位小伙伴们,冒泡排序作为我入门编程第一个遇到的算法,对我来说意义非凡。今天闲来重新拾起了这个算法,发现它竟然还有这么大的优化空间,惊讶。那我们就来优化一下它吧!写这篇文章呢主要是想和在座的各位小伙伴分享一下我的优化历程,二来还可以方便以后复习。废话不多说。我们直接开始吧! 相比大家对冒泡排序法还是不陌生的,如果你是刚刚接触编程也没关系,请看我慢慢给你解答! 基础比较好...转载 2019-09-11 00:25:31 · 103 阅读 · 0 评论