- 博客(29)
- 收藏
- 关注
原创 【UVA424】AC
#include "iostream"#include "string.h"#include "stdio.h"using namespace std;int main(){ char inputNum[100]; int sum[105]; memset(sum, 0, sizeof(sum)); memset(inputNum, '0', sizeof(inputNum));
2014-07-18 18:22:08
515
转载 指针和引用的区别
指针和引用的区别(1)引用总是指向一个对象,没有所谓的 null reference .所有当有可能指向一个对象也由可能不指向对象则必须使用 指针. 由于C++ 要求 reference 总是指向一个对象所以 reference要求有初值. String & rs = string1; 由于没有所谓的 null reference 所以所以在使用前不需要进行测试其是
2014-04-22 15:59:12
512
原创 2. 求带min的stack
这个问题的难点是如何使得得到栈中的最小值只需要时间O(1)的复杂度,既然时间从O(N)降到了O(1),一般情况下空间势必会多出来O(n)来赢得时间,开始自己的思路是给stack多加一个属性minValue,后来发现在变化莫测的出栈入栈的变化中,这仅仅O(1)的空间的增加无法正确的求出stack的最小值;其实这个问题只需要在栈的数据结构上略动下手脚就可以,问题带来最大的变化是出栈后最小值如何取,
2014-04-22 09:10:36
604
原创 2. 求带min的stack
这个问题的难点是如何使得得到栈中的最小值只需要时间O(1)的复杂度,既然时间从O(N)降到了O(1),一般情况下空间势必会多出来O(n)来赢得时间,开始自己的思路是给stack多加一个属性minValue,后来发现在变化莫测的出栈入栈的变化中,这仅仅O(1)的空间的增加无法正确的求出stack的最小值;其实这个问题只需要在栈的数据结构上略动下手脚就可以,问题带来最大的变化是出栈后最小值如何取,
2014-04-21 23:17:53
427
原创 2. 求带min的stack
这个问题的难点是如何使得得到栈中的最小值只需要时间O(1)的复杂度,既然时间从O(N)降到了O(1),一般情况下空间势必会多出来O(n)来赢得时间,开始自己的思路是给stack多加一个属性minValue,后来发现在变化莫测的出栈入栈的变化中,这仅仅O(1)的空间的增加无法正确的求出stack的最小值;其实这个问题只需要在栈的数据结构上略动下手脚就可以,问题带来最大的变化是出栈后最小值如何取,
2014-04-21 23:17:05
370
原创 2. 求带min的stack
这个问题的难点是如何使得得到栈中的最小值只需要时间O(1)的复杂度,既然时间从O(N)降到了O(1),一般情况下空间势必会多出来O(n)来赢得时间,开始自己的思路是给stack多加一个属性minValue,后来发现在变化莫测的出栈入栈的变化中,这仅仅O(1)的空间的增加无法正确的求出stack的最小值;其实这个问题只需要在栈的数据结构上略动下手脚就可以,问题带来最大的变化是出栈后最小值如何取,
2014-04-21 23:15:12
397
原创 2. 求带min的stack
这个问题的难点是如何使得得到栈中的最小值只需要时间O(1)的复杂度,既然时间从O(N)降到了O(1),一般情况下空间势必会多出来O(n)来赢得时间,开始自己的思路是给stack多加一个属性minValue,后来发现在变化莫测的出栈入栈的变化中,这仅仅O(1)的空间的增加无法正确的求出stack的最小值;其实这个问题只需要在栈的数据结构上略动下手脚就可以,问题带来最大的变化是出栈后最小值如何取,
2014-04-21 23:12:55
404
原创 【sklearn】svm
sklearn的svm是基于libsvm的,分为SVC(分类)和SVR(回归)两类,其中SVC的参数详解如下:params:
2014-04-16 20:28:01
2083
原创 1. BST树转化为双向链表
/* * -*- coding: utf-8 -*- * micro.cpp * * Created on: 2014年3月31日 * Author: szk * todo:算法第1题-BSTtreeToDoubleList */// 1. 定义BST树节点node的结构;// 2. 创建BST树;// 3. 遍历BST;// 4. bst转成list;
2014-04-03 10:55:03
1037
原创 【1】指针的真正含义
以前学指针真是云里雾里一直不大明白,今天算是把指针的定义a和*a的区别彻底区分了一下,先贴上代码:#include "stdafx.h"#include using namespace std;int main(){ int b = 1; int *a = &b; cout << a << endl; cout << *a << endl; return 0;}看看
2014-03-30 21:21:52
856
原创 NLP-1
1. DFA 和 NFA 教材中的baaa!为例,以前在本科学编译原理的时候学过这个,但是现在忘了权且当复习了。其实道理一样:编译器第一步是对源代码进行分词,对自然语言处理第一步也是对一句话进行分词。 之所以说是确定的是因为每一步操作中,都能得到一个确定的下一步。f(3) = a 或 !,当文本串是“!”转移到状态4,如果是“a”时继续停留在状态3。每一步做的决策都是正确的,不会有
2014-02-12 20:09:49
510
原创 编程之美 2.2
(1)阶乘确实是一个让人头疼的问题,其本身的实现很简单,它的问题在于结果膨胀式的增长会造成n!的结果的溢出。2.2给出了几种从数学角度出来的思路,可以避免上面的问题发生。首先要清楚的一个问题就是质因数分解:给定任意一个整数w,那么w一定可以分解成w=2^x * 3^y * 5^m……这种形式,这个数学理论是解决此类问题的关键。接着分析因为10进行质因数分解的结果为 10 = 2 *
2014-02-11 17:04:32
904
原创 编程之美2.1 解法三
解法三是一个巧妙的方法,从数学上也不好解释为什么会这样。设一个数为v,每次v & (v-1) 操作可以消除v用二进制表示的最后一个1。
2014-02-10 17:35:17
819
原创 【1】直方图
直方图x轴表示:“像素值的范围0~L-1”,y轴表示“像素值的分布概率0~1”;如果直方图分布不均衡,那么图像的质量和视觉效果必然受损;读取图像和获取图像的直方图Matlab代码:function [ output_args ] = histogramblanced(graph)%UNTITLED Summary of this function goes here% De
2014-01-22 15:22:30
762
原创 【2】Java中时间测试函数
写代码测试个执行时间比较个程序优劣经常要调用系统时间,每次用每次查每次还是忘,记在这里。一般小程序的执行时间是ns级的,所以一般情况下调用下面的函数即可:long startTime = System.nanoTime();long endTime = System.nanoTime();long time = endTime - startTime;
2014-01-10 10:46:29
608
原创 【1】Java垃圾回收机制
今天看雍俊海老师的Java习题集,第一道题就懵住了,刚接触java,对于JAVA的调度机制不太明白,在此特意将java的垃圾回收机制介绍一下:说白了道理源于生活很简单、以例子来说明:int a = 1;int b = 2;JVM分别为a和b在内存中分配了两块区域,再往后a没用了,JVM会有一个“垃圾跟踪”机制会检测到a所在的内存无用了,并回收该区域,以备后来的内存分配。浅显的道
2014-01-07 22:50:10
580
原创 分支限界法和回溯法的区别
一直没太搞明白分支限界和回溯有什么区别,今天算是终于搞明白了,以最经典的0-1背包问题为例。n = 3, 0 -1背包问题;w = [16, 15, 15];p = [45, 25, 25];CostMax = 30;解空间树如下图所示,1代表选择,0代表不选。初学者一直容易搞混的问题就是结点的问题,这里结点不是代表的解,每一条边才是代表的解;分支限界法如下处理
2013-12-21 13:55:27
11975
2
转载 什么是P问题、NP问题和NPC问题
Matrix67原创原地址为http://www.matrix67.com/blog/archives/105。这或许是众多OIer最大的误区之一。 你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并不是那种“只有搜
2013-12-18 22:17:17
677
原创 NP问题通俗理解
时间复杂度:时间复杂度并不是处理一个问题要花费多少时间,我们研究解决一个特定的数据问题花费多少时间是没有意义的,时间复杂度衡量的是随着问题规模的扩大,程序所需要的时间长度增加的情况。P问题:问题可以在多项式时间内求解的统称为P问题(可以在多项式内求解的问题一定可以在多项式时间内验证,所以P问题一定是NP问题)。NP问题:对于一类问题存在问题的解,如果我要验证问题的解是否正确,且验证本身
2013-12-18 22:15:02
3629
原创 【编程之美2.7】求最大公约数的最优算法
public class euclid { public static void main(String[] args) { int m = 0, n = 0; int temp = 0; Scanner scanner = new Scanner(System.in); m = scanner.nextInt(); n = scanner.nextInt();
2013-12-04 22:30:32
863
1
原创 Beihang ACM【1】小猪点赞问题
原题目链接:http://acm.buaa.edu.cn/problem/759/#include "stdafx.h"#include #include using namespace std;int main(){ double fun(); int T,i; cin>>T; double *S=new double[T]; for(i=0;i<T;i++) S
2013-12-03 16:38:33
595
原创 鸟哥私房菜读书笔记【1】
1. BIOS的作用?开机的时候第一个执行的就是BIOS,他的任务是根据用户的设置去去的能够开机的硬盘,并且独到硬盘里第一个山区的MBR(主引导分区)的位置,MBR存放的是最基本的加载程序,之后它会加载内核文件。2. 什么是Boot Loader?MBR上的一款软件,为用户提供不同的开机界面的选择、载入内核文件最后移交其他loader。例如:你的个人PC上装有windows和L
2013-12-02 12:25:28
723
原创 matlab中数理统计的一些工具函数
今天做方差分析遇到了一些matlab函数的问题,总结如下:1. F分布求F分布,p=finv(alpha, n1, n2)、参数无需解释估计自己就会明白、2. 双因素交互作用双方差分析先输入数据;调用anova2(disp,2),输出的结果分析即可、如上图所示。
2013-12-02 09:05:18
769
原创 【机器学习1】线性回归,贝叶斯
1. 房屋销售的例子: 这是一个最基础的一元方程的回归问题,其方程的基本形式为y=ax+b,matlab中有现成的regress函数可以调用,操作如下: x1=[123 150 87 102]';y=[250 320 160 220]';x=[zeros(4,1) x1]; // 因为这里涉及一个常数c的问题,固定做法直接把常数对应的那一列设置为1;b=regres
2013-11-12 23:00:17
1079
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人