本节内容 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法 ...
分类:
编程语言 时间:
2017-06-02 22:05:40
阅读次数:
231
算法设计基本方法有什么好处?了解常见的算法设计方法以及它们之间的区别,有利于构建算法思维的广度,有充分的理论知识。当然,如果算法思维的深度再好的话,将来你见识的算法越多,天下之间所有的算法,都会融入到你的理论和实践当中。常见算法分类穷举法(暴力法,蛮力法)..
分类:
编程语言 时间:
2017-05-31 15:27:27
阅读次数:
184
近日复习了一些算法知识,小记于此 递归与分治法 直接或间接地调用自身的算法称为递归算法。 递归是算法设计与分析中经常使用的一种技术,描写叙述简单且易于理解。 分治法的设计思想是将一个规模为n难以解决的问题分解为k个规模较小的子问题,这些子问题相互独立且与原问题同样。 递归地解这些子问题,然后将各子问 ...
分类:
编程语言 时间:
2017-05-22 16:56:48
阅读次数:
195
一、面试80%都要问的数组去重 数组去重的方式有多种,其实面试中主要是想靠对对象的理解。还记得我第一次去面试的时候,去重的时候用了2个for循环。 二、返回字符串中字符出现次数最多的那字符 三、排序算法(排序算法的种类太多) 1.冒泡排序 2.选择排序 三、不借助中间变量交换2个变量的值 四、未完待 ...
分类:
编程语言 时间:
2017-05-12 01:34:22
阅读次数:
253
原文出处: 1. 白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇 2. 面试常用算法总结——排序算法(java版) 3. 常见排序算法小结 本篇主要整理了冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序,堆排序七种常见算法,是从上面三篇博文中摘抄整理的,非 ...
分类:
编程语言 时间:
2017-05-05 23:15:44
阅读次数:
215
Kruskal算法 Kruskal算法 求解最小生成树的还有一种常见算法是Kruskal算法。它比Prim算法更直观。从直观上看,Kruskal算法的做法是:每次都从剩余边中选取权值最小的,当然,这条边不能使已有的边产生回路。 手动求解会发现Kruskal算法异常简单,以下是一个样例 先对边的权值排 ...
分类:
编程语言 时间:
2017-04-30 15:12:48
阅读次数:
214
第一章 数据结构绪论 基本概念和术语 数据 数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。 换言之,数据就是符号,而且具备两个前提: 1. 可以输入到计算机中 2. 能被计算机程序处理 数据元素 数据元素是组成数据的、有一定意义的基本单位,在计算 ...
分类:
编程语言 时间:
2017-04-26 13:50:23
阅读次数:
200
第3章 算法与程序设计模块 3.1 算 法 算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。 常用的算法:列举了穷举搜索、递归、回溯、递推、模拟、分治、贪心、深度优先搜索、广度优先搜索等几种较为常用的算法,没有做过多的描述,一旦给出具体描述,容易使内容加深, ...
分类:
编程语言 时间:
2017-04-23 01:19:39
阅读次数:
410
Debug->Debugging windows->Disassembly F4+F7 每条语句的调试,查看变量 可以通过两者的比较来互相学习 1.通过查看汇编代码学习c如何改进,减少代码量和运行次数 2.通过查看c语言对应的汇编语言学习如何用汇编写常见算法 如果将来厉害的话可以尝试写一下编译器,把 ...
分类:
编程语言 时间:
2017-04-09 09:52:50
阅读次数:
299
http://cstheory.stackexchange.com/questions/19759/core-algorithms-deployed/ 本文原始内容来源于 stackexchange,遵循 cc-wiki 协议; 近日 Emanuele Viola 在 Stackexchange 上 ...
分类:
编程语言 时间:
2017-03-20 16:43:52
阅读次数:
243