自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 收藏
  • 关注

转载 try{}catch{}finally{}中加入return后的执行顺序

在网上看到一些关于在try{}catch{}finally{}中加入return后的执行顺序的讨论,不衷一是,于是自己写了个例子测试,过程和结论如下。    在try{}catch{}finally{}程序中,无论是否发生异常且无论try或catch语句块中包含什么代码("System.exit();"除外),finally语句块中的代码都会被执行。但当try语句块中包含return...

2013-12-26 09:11:00 144

转载 .net泛型理解

泛型简介:  泛型(Generic Type)是.NET Framework2.0最强大的功能之一。泛型的主要思想是将算法与数据结构完全分离开,使得一次定义的算法能作用于多种数据结构,从而实现高度可重用的开发。通过泛型可以定义类型安全的数据结构,而没有必要使用实际的数据类型,这将显著提高系统性能并得到高质量的代码(因为可以重用数据处理算法,没有必要复制类型特定的代码)。泛型...

2013-10-28 12:00:00 128

转载 Java实现多线程的几种方法

有三种: (1)继承Thread类,重写run函数 创建: class xx extends Thread{ public void run(){ Thread.sleep(1000) //线程休眠1000毫秒,sleep使线程进入Block状态,并释放资源 }} 开启线程: 对象.start() //启动线程,run函数运行 (2)实现Runnable接口,重写ru...

2013-10-25 13:06:00 139

转载 VirtualAlloc函数使用总结

如果我们的程序需要动态内存的话,则迟早会调用Win32函数VirtualAlloc。但是程序也可以不调用VirtualAlloc,而是直接调用Windows堆函数或者CRT堆函数。不过,知道VirtualAlloc如何工作,可以帮助我们更好地理解这些调用函数。 首先,必须知道保留(Reserved)内存和占用(Committed)内存的含义。当内存放保留时,一段连续虚拟地址空间...

2013-10-24 19:45:00 414

转载 内存中的堆和栈

程序中用来存放数据的内存分为四块,其实另有一块用于存放代码,这里我们不讨论,这四块分别是:1、全局区(静态区)(static):全局变量和静态变量都存储在这块区域,与其他变量的明显区别就是生命周期不同,在程序结束时,系统会释放这块资源2、文字常量区:常量字符串就是放在这块区域,即是我们常说起的常量池。这块也是在程序结束时由系统释放。3、栈区(stack):存放函数的参数值,...

2013-10-24 19:39:00 83

转载 数据库——关系型数据库

本来想一上来就先复习SQL,然后再是数据库优化之类的东西,但是翻了翻之前上《数据库概念基础》的课件,发现有几个东西还是了解一下比较好。 第一章:数据库基础中几个需要注意的概念 第一节:什么是关系型数据库呢?关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。——摘自《百度百科》(更多深入的理解还是看...

2013-10-24 10:21:00 178

转载 如何创建一个进程,如何进程调用进程

java一般用线程就够了,多进程优势在于每个进程互不干扰,劣势在于太耗费内存,任何事情都不是绝对的,在编写Java程序时,有时候需要在Java程序中执行另外一个程序。1、启动程序Java提供了两种方法用来启动其它程序:(1)使用Runtime的exec()方法(2)使用ProcessBuilder的start()方法不管在哪种操作系统下,程序具有基本类似的一些属性。一个程序启动...

2013-10-22 09:41:00 460

转载 浅谈C++之冒泡排序、希尔排序、快速排序、插入排序、堆排序、基数排序性能对比分析(好戏在后面,有图有真相)...

最近一段时间去武汉参加了N多笔试,在几次试题中都出现了排序。偏偏出现了我没怎么看的插入排序,弄得我好是纠结。趁回学校的机会把这几个不是很复杂的排序重新复习了一下,借此比较了一下他们的效率。让我有点以外的是在数据量达到1W~10W之间,希尔排序竟然比快速排序效率还要高。贴上完整代码!冒泡排序 1 //冒泡排序 2 ////////////////////////////...

2013-10-22 08:43:00 108

转载 Moon.Orm 5.0(MQL版)使用指南

欣赏另一种Orm的设计风格----大道至简Moon.Orm 5.0(MQL版)使用指南(二)一、使用sql及存储过程1)使用List<Dictionary<string,MObject>>1.使用sql ,体验原生态的感觉stringsql="select * from Class where ClassName = @...

2013-10-22 08:41:00 126

转载 约瑟夫环问题

用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序(约瑟夫环问题)用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序[cpp]view plaincopy//用户输入M,N值,从1至N开始顺序//循环数数,每数到M输出该数值,//直至全部输出...

2013-10-16 09:00:00 128

转载 进程间通信方式

进程间通信IPC------Inter-Process Communication由于内存管理的一些机制,导致两个进程间并不能直接的进行通信(在独立的用户空间),因此我们需要利用一些介质来完成两个进程之间的通信。以下是常用的进程间通信方式。# 管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。# 有...

2013-10-13 00:08:00 84

转载 进程状态

三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化。进程一般有3种基本状态:运行、就绪和阻塞。(1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。(2)就绪:当一个进程获得了除...

2013-10-12 13:38:00 59

转载 strncpy()函数

strncpy原型:externchar*strncpy(char*dest,char*src,intn);用法:#include<string.h>功能:把src所指由NULL结束的字符串的前n个字节复制到dest所指的数组中。说明:如果src的前n个字节不含NULL字符,则结果不会以NULL字符结束。如果src的长度小于n个字节,则以NULL填充des...

2013-10-12 09:53:00 286

转载 装饰者与适配者模式的区别

1.关于新职责:适配器也可以在转换时增加新的职责,但主要目的不在此。装饰者模式主要是给被装饰者增加新职责的。2.关于原接口:适配器模式是用新接口来调用原接口,原接口对新系统是不可见或者说不可用的。装饰者模式原封不动的使用原接口,系统对装饰的对象也通过原接口来完成使用。(增加新接口的装饰者模式可以认为是其变种--“半透明”装饰者)3.关于其包裹的对象:适配器是知道被适配者的详细情况...

2013-10-11 10:22:00 108

转载 二叉树遍历---已知前序遍历和中序遍历求其后序

(1)九度上一个关于二叉树遍历的问题。通过给定的前序遍历与中序遍历就可以确定二叉树的结构。题目描述:二叉树的前序、中序、后序遍历的定义:前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树;中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树;后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根。给定一棵二叉树的前序遍历和中序遍历,求其后...

2013-10-08 16:56:00 312

转载 一个获取电脑MAC地址的方法

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Management;using System.Net.NetworkInformation;namespace GetMac{ #...

2013-10-04 13:52:00 286

转载 一个扑克牌洗牌的实例代码

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace RandomNumber{ public class RandomCreater { // 随机数生成器只需要一个 private static readon...

2013-10-03 16:11:00 153

转载 猴子分桃问题——一个简单的递归

五只猴子分桃。半夜,第一只猴子先起来,它把桃分成了相等的五堆,多出一只。于是,它吃掉了一个,拿走了一堆; 第二只猴子起来一看,只有四堆桃。于是把四堆合在一起,分成相等的五堆,又多出一个。于是,它也吃掉了一个,拿走了一堆;......其他几只猴子也都是 这样分的。问:这堆桃至少有多少个?我自己是这样想的,问题得从最后那个猴子看起,最后那个猴子依然能将桃子分5堆剩一个,则设在最后那个猴子...

2013-10-02 15:03:00 1007

转载 浅谈单元测试

无论是在面试中或者项目实践时,在写代码过程中,一个很好的习惯就是先写好单元测试,再开始写自己的函数。这样给人感觉你的思维比较缜密。 1.单元测试干了什么,作用是什么?通俗讲单元测试就是检查一个函数执行后它的返回结果或者它对系统数据造成的影响(或者其它方面的影响)是否跟你的期望一致,也就是为了证明代码的行为和我期望的一致!    ①最直接的是保证了函数的正确性(这个大家都知道...

2013-10-02 14:32:00 95

转载 录播变成直播

腾讯体育全场回放抓取晚上看比赛不太现实,第二天下班回来看回放吧,一打开网页,偌大的比分让你不想知道结果都不行。于是,写了个简单的html页面,用javascript抓取全场回放的视频地址。这样你就看不到比分了,看比赛才有那种未知的惊喜。目前测试了西甲,德甲,欧冠。其他甲级联赛应该都是支持的。说不定NBA都支持。下面是完整的代码:<!DOCTYPE html&gt...

2013-10-02 11:55:00 901

转载 SharePoint的API

之前培训写过一个作业,关于SharePoint的API的,之后做restore和backup也经常用到,在这里给总结下如何创建。using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.SharePoint;using Microsoft.Shar...

2013-10-02 11:24:00 230

转载 算法(JAVA)----两道小小算法题

1、编写一个程序解决选择问题。令k=N/2,画出表格显示程序对于N种不同的值的运行时间。 分析:选择问题是指从N个数当中,按升序(降序也可以)排列,找出第k个数。LZ的写法是采用书中给出的算法自己实现的,分别采用冒泡排序和分批处理的方式。以下为LZ写出的算法代码。import java.util.Arrays;import java.util.R...

2013-10-02 10:28:00 121

转载 C++中的宏浅析

C++中的宏浅析说到宏,恐怕大家都能说出点东西来:一种预处理,没有分号(真的吗?)。然后呢?嗯.......茫然中......好吧,我们就从这开始说起。最常见的宏恐怕是#include了,其次就是#define还有.......还是从宏的用途分类吧:1、#include 主要用于包含引用文件,至今其地位无人能替代;2、注释掉代码。例如:#if 0......

2013-10-02 08:45:00 92

转载 幸福和成功的十条诫律

  英文原文:The 10 commandments for happiness and success  生命短暂,无可浪费,这我们都知道。然而,大多数人都处中一种缺省状态的生活中,逼迫自己去认为很幸福——虽然事实上不是。为什么?因为我们让社会来指定该如何的去生活、什么才是成功和什么才是幸福。像金钱和名誉这样的东西被赋予太大的分量,成为祸根,阻碍了我们寻求生活的真正本质:活出自...

2013-09-30 11:34:00 101

转载 Introsort(内观排序)

Introsort(内观排序)2013-09-28 23:59 by v.la,51阅读,0评论,收藏,编辑.NET 4.5 这个版本的Array.Sort更改了STL的内观排序算法,那相对于快速排序内观排序到底有什么优化过的呢?根据维基百科所说,这个排序算法首先从快速排序开始,当递归深度超过一定深度(深度为排序元素数量的对数值)后转为堆排序。采用这个...

2013-09-30 11:01:00 153

转载 C# 号码归属地查询算法(根据Android来电归属地二进制文件查询修改)

近期有个项目需要用到号码归属查询,归属地数据库可能比不上ip138,淘宝上也有卖的-,-! 文本提供一个279188条记录并压缩成562KB的归属地数据。我在互联网上搜索了相关文章,要不是数据库查询或者是访问网上的api,到底有没有更好的方式,我想各大手机软件的归属地都是属于本地查询的。当我发现了Android Jni 使用C++对二进制文件查询这篇文章,发现效率真是高,作者的算法也相...

2013-09-30 10:56:00 134

转载 Discussions List : 批量运行Job,用Plan Group和CLI哪个更适合?

先介绍下故事背景,假如现在要做一个MigrationProject,要建立比较多的Plan (比如50个),在Project中你需要完成下面的任务:1stround, 要把所有的PLAN都先跑一遍FULL MIGRATION2ndround, 然后把所有的PLAN都做若干次incremental migration直到cut off time具体要求:Job需要串行运行...

2013-09-27 17:49:00 70

转载 C# convert与parse

Convert.ToInt32()与int.Parse()的区别(1)这两个方法的最大不同是它们对null值的处理方法:Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。没搞清楚Convert.ToInt32和int.Parse()的细细微区别时千万别乱用,否则可能会产生无法预料的结果,举例来说:假如从url中取一个参...

2013-09-27 09:28:00 66

转载 C# 多线程Monitor与Lock

首先lock和Minitor有什么区别呢?其实lock在IL代码中会被翻译成Monitor。也就是Monitor.Enter(obj)和Monitor.Exit(obj).lock(obj){}等价为:try{Monitor.Enter(obj)}catch(){}finally{Monitor.Exit(obj)}所以lock能做的,Monitor肯...

2013-09-27 09:16:00 82

转载 【Linux】Linux基本shell命令

Linuxshell命令目录(?)[-]Shell介绍目录操作信息显示用户间通信备份压缩信息显示Shell介绍Shell就是用户与操作系统内核kernal2.4之间的接口 ,是一个命令解释器。Shell的主要版本:bash shell(bsh,Linux的默认shell)Korn shell(ksh)tcsh(tsh)...

2013-09-26 16:16:00 51

转载 常见Java面试题 – 第三部分:重载(overloading)与重写(overriding)

ImportNew注: 本文是ImportNew编译整理的Java面试题系列文章之一。你可以从这里查看全部的Java面试系列。这篇文章介绍的常见面试题是关于重载(overloading)方法和重写(overriding)方法的。Q.下面代码片段的输出结果是什么?[java]view plaincopypublicclassMethod...

2013-09-26 16:08:00 66

转载 经典的计算机书籍

算法导论(第2版)代码大全(第2版)C++ Primer中文版(第4版)设计模式:可复用面向对象软件的基础浪潮之巅Java编程思想(第4版)Java核心技术卷1:基础知识Java核心技术卷2:高级特性人月神话Linux内核编程C程序设计语言(第2版新版)黑客与画家:硅谷创业之父Paul Graham文集编程之美:微软技术面试心得...

2013-09-26 16:06:00 62

转载 Linux进程间通信分类 以及 pipe的原理实现

一个大型的应用系统,往往需要众多进程协作,进程(Linux进程概念见附1)间通信的重要性显而易见。本系列文章阐述了Linux环境下的几种主要进程间通信手段,并针对每个通信手段关键技术环节给出详细实例。为达到阐明问题的目的,本文还对某些通信手段的内部实现机制进行了分析。序linux下的进程通信手段基本上是从Unix平台上的进程通信手段继承而来的。而对Unix发展做出重大贡献的...

2013-09-26 14:29:00 58

转载 单链表的快速排序

快排最核心的思想就是划分,确定一个枢轴元素(pivot),每一趟划分的目的就是把待排序列分为两部分,前一部分比枢轴小(序列A),后一部分比枢轴大(序列B)。经过一趟划分之后序列变为:{A} pivot {B}。以下是具体步骤:1、确定每一次划分的枢轴元素为当前待排序列的头节点。2、设置Slow和Fast两个游标,Slow指向序列A中的最后一个元素,初始化为枢轴本身(待排序列头节点)。让F...

2013-09-26 14:25:00 62

转载 再谈二分查找

二分查找算法基本思想二分查找算法的前置条件是,一个已经排序好的序列(在本篇文章中为了说明问题的方便,假设这个序列是升序排列的),这样在查找所要查找的元素时,首先与序列中间的元素进行比较,如果大于这个元素,就在当前序列的后半部分继续查找,如果小于这个元素,就在当前序列的前半部分继续查找,直到找到相同的元素,或者所查找的序列范围为空为止.用伪代码来表示, 二分查找算法大致是这个样子的:l...

2013-09-26 13:57:00 59

转载 数据库范式

I、关系数据库设计范式介绍1.1 第一范式(1NF)无重复的列 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如 果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一 个实例的信息。...

2013-09-26 13:30:00 50

转载 二分查找法浅析

题目:编一二分法递归查找函数 BinSearch(a(),low, high,n,key)对递减有序数组a中查找key值,查找到返回数组的下标,找不到返回-1。思路:1: 如果待查找的元素比数组中间的元素小 ,那么(此时递归)调用该方法本身的时候,新的“数组”的界限就变成了从low到mid-1 ,也就是“左半端”,然后一直找下去一直到找到了或者是low》high了(没招到,返回-...

2013-09-26 13:27:00 73

转载 C# Observer设计模式

Observer还是比较常见的东西,这里我们主要介绍C# Observer设计模式,包括介绍Subject:监视对象和Observer:监视者等方面。我们来看一个新的范例,因为有很多相关的内容,所以本文的进度会稍微快一些:假设我们有个高档的热水器,我们给它通上电,当水温超过95度的时候:1、扬声器会开始发出语音,告诉你水的温度;2、液晶屏也会改变水温的显示,来提示水已经快烧开了。...

2013-09-26 11:27:00 102

转载 C# 交错数组浅析

数组是在我们编程当中经常用到的,想来大家对数组都有一定的概念,这部分内容将给大家详细讲解数组在C#中是如何来定义及使用的。定义:数组是具有同一类型的一组值,数组是引用类型的,因此存在内存堆中。数组中的元素值可以在定义数组时赋予,也可以在定义数组后对单个元素进行赋值。一维数组例:publicstaticvoidMain() { //一维数组 int[...

2013-09-26 11:24:00 89

转载 C# lock关键字(多线程)

C#提供了一个lock关键字,它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。在C#中,C# lock关键字定义如下:lock(expression) statement_blockexpression代表你希望跟踪的对象,通常是对象引用。◆如果你想保护一个类的实例,一般地,你可以使用this;◆如果...

2013-09-26 11:15:00 97

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除