本章介绍邻接矩阵有向图。在"图的理论基础"中已经对图进行了理论介绍,这里就不再对图的概念进行重复说明了。和以往一样,本文会先给出C语言的实现;后续再分别给出C++和Java版本的实现。实现的语言虽不同,但是原理如出一辙,选择其中之一进行了解即可。若文章有错误或不足的地方,请不吝指出!
目录 1. 邻...
分类:
编程语言 时间:
2014-05-10 08:29:53
阅读次数:
735
1.
归并排序原理:有长度为n的子序列a[n],可以将其看做n个长度为1的子序列,将相邻子序列两两归并后子序列数量减少一半,再对子序列进行两两归并,数量又减少一般,重复直到得到一个长度为n的子序列2.
实现归并操作的代码如下:/*array[s…m]和array[m+1…t]均已各自有序,合并使得a...
分类:
其他好文 时间:
2014-05-10 00:28:40
阅读次数:
382
本文主要从原理入手分享变量和作用域的相关知识,最后结合本文所分享知识,再次深入了解下闭包的运行原理。主要参考《JS高级程序设计》
《JS权威指南》 《高性能 JS》 三本书。目录1变量1.1变量的声明1.2变量类型的特点2执行环境和作用域3再谈谈闭包变量对 JavaScript
稍微有点了解的同学都...
分类:
编程语言 时间:
2014-05-10 00:14:44
阅读次数:
436
系统在选择操作数据库的框架上面,到底是选择hibernate,还是mybatis。
首先说下两者的原理,如果你要关联几张表做查询,查出20条记录:
1.如果是mybatis
SELECT *
FROM (SELECT INNER_TABLE.*, ROWNUM OUTER_TABLE_ROWNUM
FROM (select SP_WORK_PLAN.nam...
分类:
系统相关 时间:
2014-05-09 22:56:46
阅读次数:
540
1.设计模式介绍
1.1 设计模式的概念
1.设计模式是一套被反复使用,多数人知晓,经过分类编码目的的优秀代码设计经验的总结。
2.设计模式贯彻的原理:面向接口编程,而不是面向对象实现。
3.设计模式的目标:降低耦合性,增强灵活性。
1.2 设计模式的要素
1.模式名称
2.问题
3.环境与初始环境
4...
分类:
编程语言 时间:
2014-05-09 22:42:07
阅读次数:
524
(一)插入排序
算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。
插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素...
分类:
其他好文 时间:
2014-05-09 22:38:41
阅读次数:
342
上文已讲述了回溯法以及01背包问题的原理,本文讲述如何顺序执行解决01背包问题以及通过模板模式重构软件。
一、顺序执行流程图
图1无剪枝函数的01背包问题顺序执行算法流程图
图2 有剪枝函数的01背包问题顺序执行算法流程图
无剪枝函数是通用的深度遍历算法,为了减少搜索深度可通过剪枝函数处理完全不可能的分枝。与递归方案的区别主要表现在i>=n后需要“回溯”,即用后进先出的方式将物...
分类:
其他好文 时间:
2014-05-09 22:15:22
阅读次数:
675
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4717
思路:第一次写三分法,原理和二分法其实是一样的,计算过程两边for,时间复杂度为O(n^2log(n))
代码:
#include
#include
#include
const double eps = 1e-6;
const int N = 305;
#define max(a...
分类:
其他好文 时间:
2014-05-09 21:11:49
阅读次数:
359
基于离散对数求解难的DH算法的数学原理简单分析。...
分类:
其他好文 时间:
2014-05-09 21:01:09
阅读次数:
308
应客户要求,要在邮件里添加一个div,由于内容的不确定性,想要确定高度,因此想给这个div一个scroll的属性,弄了好久也没弄好,一直不清楚原理是什么,经同事提醒,才想到去查一下outlook
对css样式的支持,才发现,outlook是不支持的,因为其渲染模式不同的问题,详细内容可参阅 此 ur...
分类:
其他好文 时间:
2014-05-09 19:40:40
阅读次数:
361