代码改变世界

随笔档案-2012年8月23日

2012年8月24日学习笔记---程序员面试宝典--循环、递归和概率

2012-08-23 22:14 by javaspring, 212 阅读, 收藏,
摘要: 程序员面试宝典之输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序,即输出125,126,145,146 #include <iostream> #include <string.h> #include <list> using namespace std; list<int>list_num; char p[10]="abdbcc"; char q[10]="abc"; void findLink(int i,int j) { if(!p[i]||!q[j]) retur 阅读全文

vs2008使用技巧推荐

2012-08-23 19:55 by javaspring, 142 阅读, 收藏,
摘要: VS2008技巧,非常实用,非常提高效率。1,Visual Studio 2008自带的1000多个 Windows 系统使用的各种图标、光标和动画文件在Visual Studio 2008的安装目录下,\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\2052文件夹下面,有一个VS2008ImageLibrary.zip,这个文件里面将常用的Windows系统图标、光标和动画文件集中到了一起。包括Office、Win9x、WinVista和WinXP等系统使用的,可以免费使用哦。2,删除多余的using指令,并且排序当我们新一个类 阅读全文

C/C++内存分配

2012-08-23 17:09 by javaspring, 198 阅读, 收藏,
摘要: 1、c/c++内存分配1、栈区:由编译器自动分配和释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区:一般由程序员分配和释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事。3、全局(静态)数据区:全局变量和静态变量的存储是放在一块的。初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。4、文字常量区:常量字符串存放在这里,程序结束后由系统释放。5、程序代码区:存放函数体的二进制代码。2、下面是一段实际说明的代码#include "stdafx.h" #include < 阅读全文

MTK笔试面试题集锦

2012-08-23 14:47 by javaspring, 654 阅读, 收藏,
摘要: 1,若有 unsigned char *p1; unsigned long *p2; p1=(unsigned char *)0x1000; p2=(unsigned long *)0x2000;请问 p1+5=();p2+5=()上面的p1与p2指向两个十六进制地址,所以:p1+5=(unsignedchar *)0x1101;p2+5=(unsignedchar *)0x2005;下面介绍一下计算机进制之间转换的方法:一、二进制转换十进制例:二进制 “1101100” 1101100 ←二进制数 6543210 ←排位方法 例如二进制换算十进制的算法: 1*26 + 1*25 + 0*24 阅读全文

POJ 3352 Road Construction 无向图割边 + 缩点

2012-08-23 13:04 by javaspring, 185 阅读, 收藏,
摘要: 来源:http://poj.org/problem?id=3352题意:在一个岛上有一些旅游景点,旅游景点之间有路。当施工的时候,若一条路在施工,则这条路是不能走得。问至少还需要增加多少条路,能够保证在施工的时候,任意两个旅游景点之间仍然是可通的。思路:其实就是一个无向图割边 + 缩点的问题。这样考虑,在一个无向图中,如果一条边是割边,则如果这条边在施工,就会产生不可到达的点。因此可以缩点,缩点后,如果一个点的度为1,说明到达该点的路径只有一条,因此需要增加一条边。也就是说,如果能够保证题目中的条件,则应该在缩点后,任意两个点之间有两条路径可达。所以,若缩点后有n个度为1的点,则应该增加(n+ 阅读全文

多线程二 多线程中的隐蔽问题揭秘

2012-08-23 11:12 by javaspring, 230 阅读, 收藏,
摘要: 上一篇《多线程一 CreateThread与_beginthreadex本质区别》中讲到一个多线程报数功能。为了描述方便和代码简洁起见,我们可以只输出最后的报数结果来观察程序是否运行出错。这也非常类似于统计一个网站每天有多少用户登录,每个用户登录用一个线程模拟,线程运行时会将一个表示计数的变量递增。程序在最后输出计数的值表示有今天多少个用户登录,如果这个值不等于我们启动的线程个数,那显然说明这个程序是有问题的。整个程序代码如下:#include <stdio.h> #include <process.h> #include <windows.h> volat 阅读全文

JSP公用分页模块+数字分页

2012-08-23 11:08 by javaspring, 1338 阅读, 收藏,
摘要: JSP公用分页模块+数字分页我的博客 http://blog.csdn.net/yjflinchong 转发请注明来源!<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <c:if test="${web.page!=null}"& 阅读全文

多线程一 CreateThread与_beginthreadex的本质区别

2012-08-23 09:54 by javaspring, 289 阅读, 收藏,
摘要: 1、尽量使用_beginthreadex()来代替使用CreateThread(),为什么? _beginthreadex()函数在创建新线程时会分配并初始化一个_tiddata块。这个_tiddata块自然是用来存放一些需要线程独享的数据。事实上新线程运行时会首先将_tiddata块与自己进一步关联起来。然后新线程调用标准C运行库函数如strtok()时就会先取得_tiddata块的地址再将需要保护的数据存入_tiddata块中。这样每个线程就只会访问和修改自己的数据而不会去篡改其它线程的数据了。因此,如果在代码中有使用标准C运行库中的函数时,尽量使用_beginthreadex()来代替C 阅读全文

2012年8月22学习笔记---程序员面试宝典

2012-08-23 00:29 by javaspring, 229 阅读, 收藏,
摘要: 1 空类与多重继承的空类以及虚函数的内存占用:#include <iostream> using namespace std; class A {}; class A1 {}; class B : public A {}; class C : public virtual B {}; class D : public A, public A1 {}; int main() { cout << sizeof(A) << endl; cout << sizeof(B) << endl; cout << sizeof(C) &l 阅读全文