现在位置: 首页 > voiced发表的所有文章
  • 08月
  • 08日
编程语言 ⁄ 共 5533字 评论关闭
转自:http://blog.csdn.net/liuchuanwen109/archive/2008/09/14/2849748.aspx     在我那篇《浅析C++中的this指针》中,我通过分析C++代码编译后生成的汇编代码来分析this指针的实现方法。这次我依然用分析C++代码编译后生成的汇编代码来说明C++中虚函数调用的实现方法,顺便也说明一下C++中的对象内部布局。下面所有的汇编代码都是用VC2005编译出来的。虽然,不同的编译器可能会编译出不同的结果,对象的内部布局也不尽相同;但是,只要是符合C++标准的编译器,编译结果和对象的内部布局应该是大同小异。    首先,是一个有着简......
阅读全文
  • 02月
  • 07日
综合 ⁄ 共 4989字 评论关闭
C++操作符的优先级 操作符及其结合性 功能 用法 L L L :: :: :: 全局作用域  类作用域  名字空间作用域 ::name class::name namespace::name L L L L L . -> [] () () 成员选择  成员选择  下标  函数调用  类型构造  object.member pointer->member variable[expr] name(expr_list) type(expr_list) R R R R R ++ -- typeid typeid 显示强制类型转换  后自增操作  后自减操作  类型ID 运行时类型ID 类型转换  lvalue++ lvalue-- typeid(type) typeid(expr) cast_name<type>(expr) R ......
阅读全文
  • 05月
  • 03日
综合 ⁄ 共 3149字 评论关闭
import java.io.*; import java.lang.*; import java.util.*; import java.text.*; import java.net.*; public class MediocreExecJavac {  //运行命令  public void runCmd(String command){   try         {                        Runtime rt = Runtime.getRuntime();    Process proc = rt.exec(command);    InputStream stderr = proc.getErrorStream();             InputStreamReader isr = new InputStreamReader(stderr);             BufferedReader br = new BufferedReader(isr);             String line = null;  ......
阅读全文
  • 04月
  • 28日
综合 ⁄ 共 434字 评论关闭
整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 25743    Accepted Submission(s): 10839 Problem Description 一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢?   Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b<100),若遇到0 0则处理结束。   Output 对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有......
阅读全文
  • 04月
  • 08日
综合 ⁄ 共 1260字 评论关闭
分支限界法 一、基本描述     类似于回溯法,也是一种在问题的解空间树T上搜索问题解的算法。但在一般情况下,分支限界法与回溯法的求解目标不同。回溯法的求解目标是找出T中满足约束条件的所有解,而分支限界法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。    (1)分支搜索算法     所谓“分支”就是采用广度优先的策略,依次搜索E-结点的所有分支,也就是所有相邻结点,抛弃不满足约束条件的结点,其余结点加入活结点表。然后从表中选择......
阅读全文
  • 03月
  • 22日
综合 ⁄ 共 3289字 评论关闭
1.读取EXECL文件类 package hzdracom.test; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import o......
阅读全文
  • 03月
  • 18日
综合 ⁄ 共 1737字 评论关闭
下午搞了五道菜题,还看了一场冠军杯录播,生活真充实。 此题相对而言稍嫌繁琐。排列组合的题目,大致上从小到大顺推即可。设b[i][j]中i表示字符串长度,j表示字符串中用到的字母个数,不难推出b[i][j] = b[i-1][j-1] + b[i - 1][j] * j。 当题目无法变得更难的时候,出题者就会使出高精度加法。事实上,这也只不过多打几行而已……   #include <cstdio>#include <string>int b[51][51][50], N;void add ( int i, int j )...{    int k;    for ( k = 0; k < 50; k ++ )        b[i][j][k] = b[i - 1][j - 1][k] + b......
阅读全文
  • 02月
  • 20日
综合 ⁄ 共 1947字 评论关闭
背景介绍         最近在coding的时候遇到这样的问题,一个两层的map,hashmap<key,map<key,value>>,重新加载时需要将这个map释放,但是这个map使用时是分为两段使用,一段是在hashmap中取出里面的map,第二段是在里层的map中查找key,这在多线程运行时有可能出现在取出里层map的引用后,重新加载数据并且释放掉现在的hashmap,这个场景引起了我对shared_ptr共享指针的关注,言归正传,总结一下shared_ptr。 shared_ptr简介 shared_ptr 主要的功能是,管理动态创建的对象的销毁。它的基本原理就是记录对象被引用的......
阅读全文
  • 02月
  • 05日
综合 ⁄ 共 1161字 评论关闭
读写锁是指多个线程读锁不互斥,读锁和写锁互斥,写锁和写锁互斥 不多说了,看代码 package com.lyj; import java.util.Random; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; public class ReadAndWriterLockDemo { /** * @param args */ public static void main(String[] args) { final Share s = new Share(); // 10个读线程和10个写线程 for (int i = 1; i <= 10; i++) { new Thread(new R......
阅读全文
  • 01月
  • 29日
综合 ⁄ 共 2506字 评论关闭
安装庖丁会出现一系列问题,最后找到这篇文章来装庖丁:http://blog.163.com/sky_jun1016/blog/static/29994156201071274459377/,问题确实少了不少,最后要发布时发现搜索欢迎您、不锈钢等3个字的词时发现页面不见了,搜索共和国、圆明园之类的词时有页面,记录为0。 剖析:当你抓取的页面数据中含有3字词(如我搜索的欢迎您、不锈钢等)时,返回的结果没有页面。当你抓取的页面数据中不含3字词时,返回0记录的页面。 具体看后台报的错误,逐步追踪发现是Query有问题,追踪过程花了好长时间,因为nutch的匹配过程是多线程处理的,......
阅读全文
  • 01月
  • 17日
综合 ⁄ 共 1122字 评论关闭
先按di排序,(从小到大)。然后依次完成合同,若发现第i个合同无法在截止日期前完成,便从之前已经完成的任务中选一个aj最大的合同,付钱来使得这个合同尽快完成。 #include<cstring> #include<cstdio> #include<iostream> #include<queue> #include<algorithm> using namespace std; struct node {     int q;     int w;     bool operator < (const node& t) const {         return q<t.q;     } }; struct shsh {     int q,w,e;     bool operator<(const shsh&kk) const{ ......
阅读全文
  • 12月
  • 17日
综合 ⁄ 共 4178字 评论关闭
分类: 算法2012-09-28 22:30 1526人阅读 评论(0) 收藏 举报 算法存储 http://blog.chinaunix.net/uid-26380419-id-3164913.html 欧拉环:图中经过每条边一次且仅一次的环;欧拉路径:图中经过每条边一次且仅一次的路径;欧拉图:有至少一个欧拉环的图;半欧拉图:没有欧拉环,但有至少一条欧拉路径的图。【无向图】一个无向图是欧拉图当且仅当该图是连通的(注意,不考虑图中度为0的点,因为它们的存在对于图中是否存在欧拉环、欧拉路径没有影响)且所有点的度数都是偶数;一个无向图是半欧拉图当且仅当该图是连通的且有......
阅读全文