算法分析

以下是为您整理出来关于【算法分析】合集内容,如果觉得还不错,请帮忙转发推荐。

【算法分析】技术教程文章

算法分析——走迷宫问题【代码】【图】

原文链接:http://www.cnblogs.com/liangyan19910818/archive/2011/08/19/2146140.html 1 #include <stdio.h> 2 3 int visit(int i , int j); 4 5 int maze[7][7] = { 6 {2,2,2,2,2,2,2}, 7 {2,0,0,0,0,0,2}, 8 {2,0,2,0,2,0,2}, 9 {2,0,0,2,0,2,2},10 {2,2,0,2,0,2,2},11 {2,0,0,0,0,0,2},12 {2,2,2,2,2,2,2},13 };14 int si = 1 , sj = 1 ;15 int ei = 5 , ej = ...

算法分析——括号匹配【代码】【图】

原文链接:http://www.cnblogs.com/liangyan19910818/archive/2011/09/10/2173342.html括号匹配问题是指要匹配一个字符串的左,右括号:括号问题可以用来解决C语言中的“{”和“}”的匹配问题,可以观察到,如果从左至右扫描一个字符串, 那么每个右括号将于最近遇到的那个未匹配的左括号相匹配,在从左至右的扫描工程中把所遇到的左括号 存放到堆栈内,每当遇到一个右括号时,就将它与栈顶的左括号(如果存在)相匹配,同时从栈顶...

数据结构与算法分析(四)链表【图】

链表(Linked List)的经典使用场景,LRU缓存淘汰算法 缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有着非常广泛的应用,比如:CPU缓存、数据库缓存、浏览器缓存等等 缓存的大小有限,用满时 留哪些 删哪些呢?先进先出策略FIFO(First IN,First Out)、最少使用策略LFU(Least Frequently Used)、最近最少使用策略LRU(Least Recently Used) 举例:买了很多书,书太多了放不下,作大扫除,选择去掉一部分策略如...

LTS秘钥协商算法分析

1、根据RCF文档说法 在1-RTT中有两种密钥协商算法(1-RTT ECDHE和 1-RTT PSK )和4中0-RTT密钥协商方式(0-RTT PSK, 0-RTT ECDH ,0-RTT ECDHE-PSK ,0-RTT ECDH-ECDHE) 首先看ECDH密钥的协商: 计算存在两种方法: 第一种:密钥生成算法 ECDH_Generate_key 输出一个公钥和私钥对 (ECDH_pub_key,ECDH_pri_key),ECDH_pri_key需要秘密的保存,ECDH_pub_key可以公开发送给对方。 第二种:密钥协商算法 EC...

《数据结构与算法分析——C语言描述》ADT实现(NO.01) : 栈(Stack)

这次的数据结构是一种特殊的线性表:栈(Stack) 栈的特点是后入先出(LIFO),可见的只有栈顶的一个元素。 栈在程序中的地位非常重要,其中最重要的应用就是函数的调用。每次函数调用时都会创建该函数的一个“活动记录”( Activation Record ,或称作“帧”( Frame ))压入运行时堆栈中,用于保存函数的参数,返回值,返回指令地址,返回活动记录地址,局部变量等内容。当然,在高级语言中我们不需要手动完成这一工作,学习汇编语言...

数据结构与算法分析(四)链表

一、什么是链表? 1.和数组一样,链表也是一种线性表。 2.从内存结构来看,链表的内存结构是不连续的内存空间,是将一组零散的内存块串联起来,从而进行数据存储的数据结构。 3.链表中的每一个内存块被称为节点Node。节点除了存储数据外,还需记录链上下一个节点的地址,即后继指针next。二、为什么使用链表?即链表的特点 1.插入、删除数据效率高O(1)级别(只需更改指针指向即可),随机访问效率低O(n)级别(需要从链头至链尾进行...

编译器C-Free V352注册算法分析

原文链接:http://www.cnblogs.com/F4ncy/archive/2005/09/19/239976.html编译器C-Free V352注册算法分析 作者:prince ASPack 2.12 脱壳很简单,ASPackDie也可以轻松对付。无自校验,脱壳后可直接运行。注册情况:机器码给出,输入用户名prince和序列号8764321,确定,提示重启验证。说到重启验证,最简单最直接的就想到注册表,确认一下,打开注册表搜索用户名prince,果然找到在\HKEY_LOCAL_MACHINE\SOFTWARE\C-Free\3.5下,同样...

模拟退火算法分析【代码】

W1:什么是模拟退火算法? 模拟退火算法(Simulate Anneal,SA)是一种通用概率演算法,用来在一个大的搜寻空间内找寻命题的最优解。其原理和金属退火的原理近似。将热力学的理论套用到统计学上,金属在加热至高温后维持该温度,并以一种稳定的速度降温,最后使整个系统达到最稳定状态。 而模拟退火算法则是在求解过程中模拟了这一退火过程,即在求解过程中引入随机因素。模拟退火算法以一定的概率来接受一个比当前解要差的解,因此...

算法第四版1.4算法分析:习题1.4.14

import edu.princeton.cs.algs4.StdOut; import edu.princeton.cs.algs4.StdRandom;import java.util.Arrays;public class E1_4_14 {public static void main(String[]args){//测试是否正确int[] a={1,2,3,-6,-6,7};StdOut.println(fourSum(a));//DoublingRatio 测试速度int N=25;double prev=timeTrial(N);for (N=50;true;N+=N){double now=timeTrial(N);StdOut.printf("N=%6d time=%6.1f ratio=%4.1f\n",N,now,now/prev);prev=...

算法第四版1.4算法分析:习题1.4.44

题目意思是当第一次重复的数出现时 生成的前一个数用了多少次import edu.princeton.cs.algs4.StdOut; import edu.princeton.cs.algs4.StdRandom;public class E1_4_44 {public static void main(String[]args){int N=10000;double sum=0.0;for (int i=0;i<20000;i++){//int temp=BirthdayProblem(N);sum+=temp;StdOut.printf("N=%8d find=%8d\n",N,temp);}StdOut.println("avg="+sum/20000+" expectation="+Math.sqrt(Math.PI*N/...

算法分析 - 相关标签