菜鸟笔记
提升您的技术认知

算法笔记-ag真人游戏

二叉树的遍历

菜鸟阅读 : 773

二叉树的遍历 二叉树的遍历有:前序/中序/后序的递归结构遍历: 1. 前序遍历(preorder traversal 亦称先序遍历)——访问根结点的操作发生在遍历其左右子树之前。 2. 中序遍历(inorder traversal)——访问...

全排列问题二连击

菜鸟阅读 : 537

全排列问题系列,您将学到如何设计递归,递归的好坏直接影响到动态规划,其次递归涉及到深度优先遍历时,要考虑恢复现场,如何剪枝,如何去重等技巧。 一、全排列问题 i 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。...

树的各种概念汇总

菜鸟阅读 : 723

一、树的相关概念 在学习各种树的算法以及应用时,让我们先来学习一下树的相关概念。 1.1 结点的度 在树中,结点的度表示结点拥有的子树的数目,即结点有几颗子树,该结点就有几度。 下面来看图理解下。 在上图中,结点 a 有两棵子树,分别是 b...

环形链表问题

菜鸟阅读 : 817

问题描述: 给定一个链表,判断链表中是否有环。 首先介绍一下快慢指针: 我们定义两个指针,一快一慢。慢指针每次只移动一步,而快指针每次移动两步。 来看以下例子: 在环形链表问题中,我们用slow和fast指向链表的开始,slow一次走一步,...

贪心算法实例

菜鸟阅读 : 1009

文章目录 选择排序 平衡字符串 买股票的最佳时机 跳跃游戏 钱币找零 多机调度问题 活动选择 无重叠区间 选择排序 我们熟知的选择排序,其采用的就是贪心策略。 它所采用的贪心策略即为每次从未排序的数据中选取最小值,并把最小值放在未排序数据的...

二叉搜索树(c )

菜鸟阅读 : 557

二叉搜索树概念与操作 二叉搜索树的概念 二叉搜索树又称二叉排序树,若它的左子树不为空,则左子树上所有节点的值都小于根节点的值;若它的右子树不为空,则右子树上所有节点的值都大于根节点的值,它的左右子树也分别未二叉搜索树。也可以是一颗空树。 i...

动态规划套路详解

菜鸟阅读 : 783

前言 前一篇博客总结了动态规划,但是对于我这初学者,还是很多地方不能理解,所以我就在网上找到了一个大神的讲解,确实很棒。转载过来。 原文链接在下面参考资料。 1. 动态规划套路详解 下面通过对斐波那契数列和这道凑零钱问题详解动态规划。如果只...

程序员必知之浮点数运算原理详解

菜鸟阅读 : 590

  导读:浮点数运算是一个非常有技术含量的话题,不太容易掌握。许多程序员都不清楚使用==操作符比较float/double类型的话到底出现什么问题。 许多人使用float/double进行货币计算时经常会犯错。这篇文章是这一系列中的精华,所...

有趣的位运算

菜鸟阅读 : 751

有趣的位运算   计算机的终极程序其实只有0和1,转化成集成电路的低电压和高电压来进行存储和运算。如果你是计算机相关专业出身或者是一名软件开发人员即使不对计算机体系结构如数家珍,至少也要达到能够熟练使用位运算的水平,要不然还是称为代码搬运工...

算法思想之动态规划

菜鸟阅读 : 834

  动态规划(dynamic programming)主要解决的问题:多阶段决策过程最优化, 其主要的思想是将最优化决策过程分为若干个互相联系的阶段,每个阶段需要作出一个决策,并且当前阶段的决策会影响下一阶段的决策,从而影响到整个过程的活动...