一、什么是算法? 算法(Algorithm):一个计算过程,解决问题的方法 一个算法应该具有以下七个重要的特征: ①有穷性(Finiteness):算法的有穷性是指算法必须能在执行有限个步骤之后终止; ②确切性(Definiteness):算法的每一步 ...
首先必须得说本人对算法研究不深,一些简单的就得想半天,老是这样感觉不太好,遂记录下一些常见的基础算法,避免尴尬。不足之处请各位多多指教。 其次,用vs写C语言程序时可能会出现如下错误:错误C scanf : This function or variable may be unsafe. Consider using scanf s instead. To disable deprecation, ...
2015-11-28 15:10 5 13574 推荐指数:
一、什么是算法? 算法(Algorithm):一个计算过程,解决问题的方法 一个算法应该具有以下七个重要的特征: ①有穷性(Finiteness):算法的有穷性是指算法必须能在执行有限个步骤之后终止; ②确切性(Definiteness):算法的每一步 ...
1. 写在前面 本篇博文是学习算法导论的第一次记录,主要想介绍如何去证明算法的正确性;如何去评判一种算法的好坏;以及如何去改进算法。 2. 从插入排序说起 插入排序(insert-sort)是一种十分常见的算法,我们在生活中可能就经常在使用——玩扑克。考虑我们抓牌时的场景。首先,你的右手 ...
算法:贪婪算法基础 理解贪心算法 说明 贪心算法是使所做的选择看起来都是当前最佳的,期望通过所做的局部最优选择来产生一个全局最优解。 设计贪心算法的步骤 1.将优化问题转换成这样一个问题,即先做出选择,再解决剩下的一个子问题。 2.证明原问题总是有一个最优解是贪心选择的得到 ...
算法基础一:算法设计与分析 一、什么是算法 算法是程序的灵魂 是解决一个计算问题的一系列计算步骤的 有序的 合理的排列。 本次算法的基础学习过程将从渐增型算法 分治算法 动态规划 贪婪策略 回溯算法 来学习。 二、算法分析的基础概念 一般来说,解决同一问题的算法,需要 ...
目录 序 堆栈是什么? 实现方式 静态数组堆栈 动态数组堆栈 ...
目录 LOW B 三人组 冒泡排序 选择排序 插入排序 NB 三人组 快速排序 堆排序 归并排序 ...
基础概念 G=(V, E) 如果无向图中从每一个顶点到其他每个顶点都存在一条路径,则称该无向图是连通的(connected)。具有这样性质的有向图称为是强连通的的(strongly connected)。如果有向图不是强连通的,但它的基础图(underlying graph)(也就是其弧上去掉 ...
目录 回溯 回溯法解决的问题 模板 组合 剪枝优化 贪心 什么是贪心 贪心一般解题步骤 分发 ...