由于我的极差记忆力,我打算把这个破玩意先记下来。因为以后会有改动(Delaunay三角网生成算法),我不想把一个好的东西改坏了。。。好吧……凸包生成算法,: 1.先在指定的宽(width)高(height)范围内生成一堆随机点; ??1.1. 生成N个不重复的正整数,使用洗牌算法让生成的数字不重复; ??1.2. 将每个数字分解成坐标。可以设想一个二维数组,每个数字依次填进数组内。那么,对于数字A来说,它能够生成的坐标则为:x = A % width;y = ...
参考:http://blog.csdn.net/dazhong159/article/details/7906916百度面试题目:输入一个整数和一棵二元树。从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。打印出和与输入整数相等的所有路径。例如输入整数 22 ,如下图二元树:10/512/ \ 47 则打印出两条路径:10, 12和10, 5, 7。#include <stdafx.h> #include<stdlib.h> #define MAX 20 struct BiTreeNode { int data; struct BiTreeNode *l...
最近老是碰到和其他项目对接,对方项目采用JAVA,对于调用api时通常会 设计到对参数的加密解密。这时候就需要把对方的加密算法用C#实现一遍。直接上代码。Java private static byte[] iv = {1,2,3,4,5,6,7,8}; public static String encryptDES(String encryptString, String encryptKey) throws Exception { // IvParameterSpec zeroIv = new IvParameterSpec(new byte[8]); IvParameterSpec zeroIv = new IvParame...
包覆,英文名为wrap,同投影(projection)不同。前者线条长度保持不变,后者可以是圆柱投影或锥型投影等,得到的曲线是会变形的。如下看图就可以有很明显的不同。本文提供了包覆的详细算法和实现代码,该算法可以将2d图形包覆到实体模型(TopoDS_Shape)或网格模型(如stl)上。开发工具C++、OpenCASCADE、CGAL。包覆 投影 包覆 ...
今天又看了一遍KMP,感觉真的懂了...就来这儿发一下心得吧.KMP算法其实就是暴力的改进版.让我们看看暴力的匹配.Original string: ababababcbbababababc Pattern string: abababc步骤:ababababcbbababababc abababc....中间一些步骤ababababcbbababababcabababc这里a和c匹配不了了,传统的作法会从第二个字符`b‘开始匹配.明显不行又跳出.即:ababababcbbababababca...再从第三个字符`a‘开始:ababababc...abababc现在匹配了.继续重复...
发工资咯:)Problem : 430Time Limit : 1000msMemory Limit : 65536Kdescription作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵 但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每个老师的工资额都知道,最少需要准备多少张人民币,才能在给每位老师发工资的时候都不用老师找零呢? 这里假设老师的工资都是正整数,单位...
例如 arr=[1,2,1,1,1] k=3累加和为 3的最长子数组为[1,1,1] 所以结果为3 思路方法: 两个指针 left 和right 初始值都是0 都在左边 sum 代表 子数组 left.....right的和 len 一直记录累加和为k的所有子数组中最大子数组的长度 根据 sum与k的比较结果决定 left 跟 right 哪一个移动!!!! package TT;publicclass Test70 {publicstaticint getMaxLength(int[] arr, int k){if(arr==null || arr.length==0 || k<...
一、题目描述给定多个可能重叠的区间,找出重叠区间的个数。举例如下:输入:[1,5],[10,15],[5,10],[20,30]输出:2 说明:题意应该是找出重叠区间中区间的最大个数,当没有区间重叠时,重叠个数最大为1,比如输入为:[1,5],[10,15],则输出为1;输入为:[1,2],[2,3],[3,4],[4,5],则输出为2(重叠区间相互之间都要有交集);输入为:[1,7],[2,5],[3,4],[8,15],[9,17],[20,25],则输出为3。 二、题目分...
现在通过一则故事来学习paxos的算法的流程(2阶段提交),有2个Client(老板,老板之间是竞争关系)和3个Acceptor(政府官员):现在需要对一项议题来进行paxos过程,议题是“A项目我要中标!”,这里的“我”指每个带着他的秘书Proposer的Client老板。Proposer当然听老板的话了,赶紧带着议题和现金去找Acceptor政府官员。作为政府官员,当然想谁给的钱多就把项目给谁。Proposer-1小姐带着现金同时找到了Acceptor-1~Acceptor-3官员,1与...
/*首先呢,手动@一下逸安dalao。前几天一是考试没时间,再就是这个算法我只是懂,没写过题所以不敢写一个专题博客。终于抽出时间写一下这个noip基本不会涉及的算法啦*/首先我们知道回文的定义:正反读都是一样的字符串叫做回文串。如:madam,lol,oppo,zz,甚至连单字符都可以被称为回文(串)。上面的例子可以看出,回文串可以分为两种:奇数回文和偶数回文。如果我们想知道以一个字符串的所有子串中,最长的回文串是多长,怎么...
一、最短路径 ①在非网图中,最短路径是指两顶点之间经历的边数最少的路径。 AE:1 ADE:2 ADCE:3 ABCE:3 ②在网图中,最短路径是指两顶点之间经历的边上权值之和最短的路径。 AE:100 ADE:90 ADCE:60 ABCE:70 ③单源点最短路径问题 问题描述:给定带权有向图G=(V, E)和源点v∈V,求从v到G中其余各顶点的最短路径。 应用实例——计算机网络传输的问题:怎样找到一种最经济的方式,从一台计算...
算法四:回溯和分支界定 回溯:寻找问题的解的一种可靠的方法是首先列出所有候选解,然后依次检查每一个,在检查完:所有或部分候选解后,即可找到所需要的解。理论上,当候选解数量有限并且通过检查所有或部分候选解能够得到所需解时,上述方法是可行的。不过,在实际应用中,很少使用这种方法,因为候选解的数量通常都非常大(比如指数级,甚至是大数阶乘),即便采用最快的计算机也只能解决规模很小的问题。对候选解进行系统检查...
Q-learning 相关的资料 https://www.youtube.com/watch?v=V1eYniJ0Rnkgoogle deepmind 的Q-learning 算法打游戏的一个很酷的视频。请观看 1.http://www.pysnap.com/reinforcement-learning-in-python/ 2.http://www.nervanasys.com/demystifying-deep-reinforcement-learning/ 3.http://wanghaitao8118.blog.163.com/blog/static/13986977220153811210319/ 4.https://github.com/nivwusquorum/tensorflow-deepq 【开源:Tensorflo...
为什么要了解内核的调度策略呢?呵呵,因为它值得我们学习,不算是废话吧。内核调度程序很先进很强大,管理你的LINUX上跑的大量的乱七八糟的进程,同时还保持着对用户操作的高灵敏响应,如果可能,为什么不把这种思想放到自己的应用程序里呢?或者,有没有可能更好的实现自己的应用,使得操作系统能够以自己的意志来分配资源给自己的进程?带着这两个问题来看看KERNEL。首先回顾上我们开发应用程序,基本上就两种类型,1、IO消耗型...
什么是基础呢? 就是要把我们大学所学的离散数学,算法与数据结构,操作系统,计算机体系结构,编译原理等课程学好。对计算机的体系,CPU本身,操作系统内核,系统平台,面向对象编程,程序的性能等要有深层次的掌握。要编写出优秀的代码同样要扎实的基础,如果数据结构和算法学的不好,怎么对程序的性能进行优化,怎样从类库中选择合适的数据结构。如果不了解操作系统,怎样能了解这些开发工具的原理,它们都是基于操作系统的。不...