自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (11)
  • 收藏
  • 关注

原创 awesomeplayer 数据流

2012-12-20 21:19:08 743

原创 又想写博客了

作为数学系研究生,实在是没有想到自己毕业后的职业是Android开发。毕业已经两年了,一直都在做多媒体方面的开发工作,Camera、Surfaceflinger、Stagefrirht等等。我想还是需要把工作的一点一滴记录下来,也能更好积累。            希望我能坚持下来。 计划   流媒体-----》 Camera系统-----》SurfaceFlinger。

2012-11-16 22:14:20 500

转载 TCP为什么三次握手

TCP 连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号并交换 TCP 窗口大小信息。以下步骤概述了通常情况下客户端计算机联系服务器计算机的过程:1. 客户端向服务器发送一个SYN置位的TCP报文,其中包含连接的初始序列号x和一个窗口大小(表示客户端上用来存储从服务器发送来的传入段的缓冲区的大小)。2. 服务器收到客户端发送过来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,其中包含它选择的初始序列号y、对客户端的序列号的确认x+1和一个窗口大小(表示服务器上用

2010-09-08 21:09:00 622

转载 海量数据处理

<br />最近有点忙,稍微空闲下来,发篇总结贴。 <br /><br />大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。 <br /><br />下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。 <br /><br /

2010-09-03 11:47:00 557

转载 多线程编程

<br />这是多线程编程之二-MFC<br /><br />基于MFC的多线程编程<br /><br />  在Visual C++ 5.0附带的MFC 4.21类库中,也提供了多线程编程的支持,基本原理与上面所讲的基于Win32函数的设计一致,但由于MFC对同步对象作了封装,因此对用户编程实现来说更加方便,避免了对象句柄管理上的繁琐工作。更重要的是,在多个窗口线程情况下,MFC中直接提供了用户接口线程的设计。<br /><br />  在MFC 中,线程分为两种:用户接口线程和辅助线程。用户

2010-08-14 11:28:00 627

原创 MFC 多线程总结

<br />(一) MFC对多线程编程的支持<br />     <br />        MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。<br /><br />      工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编

2010-08-13 08:43:00 576

原创 三维网格的骨架提取

       经过这段时间的努力,骨架提起终于有了点成果。这次编码吸取上次失败的经历,在代码规范上下了大功夫,算法上,在导师的帮助下彻底弄明白了。      算法:         1,体素化         2,细化(判断简单点)     下面还有很多工作要做,怎么样从骨架返回到三维网格,进而对网格进行四边形分割,加油!下面帖几张提取的结果  程序的环境是MFC+openGL细节决定成败!

2010-08-08 09:39:00 4323 10

转载 图像处理

<br />二值图像是一种简单的图像格式,它只有两个灰度级,即"0"表示黑色的像素点,"255"表示白色的像素点,至于如何从一幅普通的图像获得二值图像,请参考我近期在天极网上发表的《Visual C++编程实现图像的分割》一文。二值图像处理在图像处理领域占据很重要的位置,在具体的图像处理应用系统中,往往需要对于获得的二值图像再进一步进行处理,以有利于后期的识别工作。二值图像处理运算是从数学形态学下的集合论方法发展起来的,尽管它的基本运算很简单,但是却可以产生复杂的效果。常用的二值图像处理操作有许

2010-08-07 17:07:00 1672 1

转载 并行细化算法

<br />http://hi.baidu.com/conglingks/blog/item/1ee6aade65d2015dcdbf1a22.html<br /><br />细化算法的分类:<br />        依据是否使用迭代运算可以分为两类:第一类是非迭代算法,一次即产生骨架,如基于距离变换的方法。游程长度编码细化等。第二类是迭代算法,即重复删除图像边缘满足一定条件的像素,最终得到单像素宽带骨架。迭代方法依据其检查像素的方法又可以再分成串行算法和并行算法,在串行算法中,是否删除像素在每次

2010-08-07 16:53:00 4582 3

转载 QT插件机制

<br />Qt有两种与插件有关的API。一种用来扩展Qt本身的功能,如自定义数据库驱动,图像格式,文本编解码,自定义分格,等等,称为Higher-Level API。另一种用于应用程序的功能扩展,称为Lower-Level API。前一种是建立在后一种的基础之上的。这里讨论的是后一种,即用来扩展应用程序的Lower-level API。<br /><br /><br />让应用程序支持插件扩展的步骤:<br /> 1. 定义一个接口集(只有纯虚函数的类),用来与插件交流。<br />

2010-07-10 17:27:00 5245

转载 C udp 组播

<br /> #include <sys/types.h><br /> #include <sys/socket.h><br /> #include <arpa/inet.h><br /> #include <stdio.h><br /> #include <stdlib.h><br /> #include <string.h><br /><br />

2010-07-09 13:00:00 5293 1

转载 什么时候要用虚析构函数

<br />什么时候要用虚析构函数?<br />通过基类的指针来删除派生类的对象时,基类的析构函数应该是虚的。否则其删除效果将无法实现。<br />一般情况下,这样的删除只能够删除基类对象,而不能删除子类对象,形成了删除一半形象,从而千万内存泄漏。<br />原因:<br />在公有继承中,基类对派生类及其对象的操作,只能影响到那些从基类继承下来的成员。如果想要用基类对非继承成员进行操作,则要把基类的这个操作(函数)定义为虚函数。<br />那么,析构函数自然也应该如此:如果它想析构子类

2010-07-02 11:01:00 839

转载 Socket总结

<br />Winsock 的I/O操作:<br /><br />1、 两种I/O模式 <br />阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字 默认为阻塞模式。可以通过多线程技术进行处理。 <br />非阻塞模式:执行I/O操作时,Winsock函数会返回并交出控制权。这种模式使用 起来比较复杂,因为函数在没有运行完成就进行返回,会不断地返回 WSAEWOULDBLOCK错误。但功能强大。<br />为了解决这个问题,提出了进行I/O操作的一些I/O模型,下面

2010-06-29 14:26:00 2525 1

原创 数据库的三层架构

<br /> <br />关于<br />  三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:<br />表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。<br />区分层次的目的即为了“高内聚,低耦合”的思想。<br />  1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。<br />  2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业

2010-06-25 17:16:00 2390

转载 QT事件

<br />Qt事件<br />Qt程序是事件驱动的, 程序的每个动作都是由幕后某个事件所触发. Qt事件的类型很多, 常见的qt的事件如下:<br />键盘事件: 按键按下和松开.<br />鼠标事件: 鼠标移动,鼠标按键的按下和松开.<br />拖放事件: 用鼠标进行拖放.<br />滚轮事件: 鼠标滚轮滚动.<br />绘屏事件: 重绘屏幕的某些部分.<br />定时事件: 定时器到时.<br />焦点事件: 键盘焦点移动.<br />进入和离开事件: 鼠标移入wi

2010-06-17 13:41:00 634

转载 Trie树

Trie树既可用于一般的字典搜索,也可用于索引查找。对于给定的一个字符串a1,a2,a3,...,an.则采用TRIE树搜索经过n次搜索即可完成一次查找。不过好像还是没有B树的搜索效率高,B树搜索算法复杂度为logt(n+1/2).当t趋向大,搜索效率变得高效。怪不得DB2的访问内存设置为虚拟内存的一个PAGE大小,而且帧切换频率降低,无需经常的PAGE切换。<br />// trie.cpp : 定义控制台应用程序的入口点。<br /><br />//<br /><br />#include"stdafx

2010-06-15 21:10:00 527

转载 插件技术

<br /> 很多人对插件技术很感兴趣,这两天我对播放器的插件技术的原理做了些研究,现在就把一些心得写出来。<br />    插件原理就是通过统一的程序接口来调用不同的模块,以实现不同功能的调用。用来扩充主程序的功能。<br />    现在我们来谈谈它的实现 。<br /><br />    插件技术的实现,一般都是先定义好一个接口结构。这个结构包含了主程序要引用的接口函数的指针。当然,这些接口函数的格式必须是事先定义好了的。而在插件Dll中一般只有一个导出函数,利用这个导出函数,我们可以得到接口结构的

2010-05-31 22:54:00 620

原创 百度实习生笔试2010

2010年实习生招聘笔试题RD-2 第一题     简答题1.  多线程和多进程模式有什么区别?在用两种模型开发服务程序时,分别有什么优缺点?采用长连接和短连接模式有什么区别?分别有什么优缺点?采用同步和异步模式有什么区别?分别有什么优缺点。 2.  请写出以下程序的运行结果,并解释导致这样运行结果的关键性原因。 #include using std::cout;class P{public:vi

2010-05-30 21:22:00 891

转载 骨架提取

BOOL IsContourP(int x,int y, IplImage *Src_Img){ BOOL p[10] ={0}; int LineBytes =Src_Img->widthStep; BYTE *lpPtr= (BYTE*)(Src_Img->imageData+LineBytes*y)+x;  p[2]=*(lpPtr-LineBytes) ? true

2010-05-28 16:55:00 1219

转载 QT Tree model

Qt 的确是一个好东西,开发起来非常方便,但是方便也带来很多问题,这些问题就不多说了,用到的人自然会有体会。这几天在研究Qt的MVC,List和Table类型的都很简单,没有什么难度,但是它的TreeModel实在是让我晕了好几天。一般用TreeModel都是用自己的类,于是,按着文档上说明的,关于继承QAbstractItemModel的时候,必须实现如下几个函数:index()

2010-05-20 16:10:00 4988

转载 QT model/view 学习七

Delegate  类概念与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件。一般来讲, view负责把数据展示给用户,也处理用户的输入。为了获得更多的灵性性,交互通过delegagte执行。它既提供输入功能又负责渲染view中的每个数据项。 控制delegates的标准接口在QAbstractItemDelegate类中定义。Dele

2010-05-18 15:24:00 908

转载 QT model/view 学习六

在views中选择数据项概念用于新的view类中的选择模型比Qt3中的模型有了很大的改进。它为基于model/view架构的选择提供了更为全面的描述。尽管对提供了的views来说,负责操纵选择的标准类已经足以应付,但是你也可以创建特定的选择模型来满足你特殊的需求。关于在view被选择的数据项的信息保持在QItemSelectionModel类的实例中。它也为每个

2010-05-18 15:23:00 598

转载 QT model/view 学习五

View 类概念在model/view架构中,view从model中获得数据项然后显示给用户。数据显示的方式不必与model提供的表示方式相同,可以与底层存储数据项的数据结构完全不同。内容与显式的分离是通过由QAbstractItemModel提供的标准模型接口,由QAsbstractItemview提供的标准视图接口共同实现的。普遍使用model inde

2010-05-18 15:21:00 592

转载 QT model/view 学习四

创建新的Models介绍model/view组件之间功能的分离,允许创建model利用现成的views。这也可以使用标准的功能 图形用户接口组件像QListView,QTableView和QTreeView来显示来自各种数据源的数据为。QAbstractListModel类提供了非常灵活的接口,允许数据源以层次结构的形式来管理信息,也允许以某种方式对数据进行插入、删除、

2010-05-18 15:19:00 529

转载 QT model/view 学习三

Model类基本概念在model/view构架中,model为view和delegates使用数据提供了标准接口。在Qt中,标准接口QAbstractItemModel类中被定义。不管数据在底层以何种数据结构存储,QAabstractItemModel的子类会以层次结构的形式来表示数据,结构中包含了数据项表。我们按这种约定来访问model中的数据项,但这个约定不会对

2010-05-18 15:13:00 572

转载 QT model/view 学习二

介绍Qt提供了两个标准的models:QStandardItemModel和QDirModel。QStandardItemModel是一个多用途的model,可用于表示list,table,tree views所需要的各种不同的数据结构。这个model也持有数据。QDirModel维护相关的目录内容的信息,它本身不持有数据,仅是对本地文件系统中的文件与目录的描述。

2010-05-18 15:12:00 611

转载 QT model/view 学习一

介绍Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系。这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接口,使得更多的数据源可以被这些item view使用。这里对model/view的结构进行了描述,结构中的每个组件都进行了解释,给出了一些例子说明了提供的这些类如何使用。

2010-05-18 15:10:00 684

转载 使用Qt编写模块化插件式应用程序

动态链接库技术使软件工程师们兽血沸腾,它使得应用系统(程序)可以以二进制模块的形式灵活地组建起来。比起源码级别的模块化,二进制级别的模块划分使得各模块更加独立,各模块可以分别编译和链接,模块的升级不会引起其它模块和主程序的重新编译,这点对于大系统的构建来说更加实用。另一方面,对于商业目的明显的企业,各模块可以独立设置访问权限,开发成员只能访问自己负责的模块,其它模块是不能也不给看到的,这样

2010-05-15 16:32:00 2205

转载 在Qt中如何编写插件,加载插件和卸载插件

Qt提供了一个类QPluginLoader来加载静态库和动态库,在Qt中,Qt把动态库和静态库都看成是一个插件,使用QPluginLoader来加载和卸载这些库。由于在开发项目的过程中,要开发一套插件系统,就使用了Qt的这套类库。一 编写插件编写一个Qt的插件需要以下步骤 1.声明一个插件类,2.定义一个类,实现这个插件类定义的接口,定义的这个类必须从QObje

2010-05-15 13:18:00 2384 1

转载 插件的技术原理

插件的本质在于不修改程序主体(平台)的情况下对软件功能进行扩展与加强,当插件的接口公开后,任何公司或个人都可以制作自己的插件来解决一些操作上的不便或增加新的功能,也就是实现真正意义上的“即插即用”软件开发。平台+插件软件结构是将一个待开发的目标软件分为两部分,一部分为程序的主体或主框架,可定义为平台,另一部分为功能扩展或补充模块,可定义为插件。   

2010-05-15 13:10:00 1688

转载 QT 中文显示的问题

qt 中文乱码 初学Linux,直接进阶QT编程。然而,第一个Demo程序就碰到了中文乱码,巨汗!环境:1、RedHat AS52、QT4.4.03、LANG="zh_CN.GB18030"程序:...QTextCodec::setCodecForTr(QTextCodec::codecForName("gb180

2010-05-12 17:55:00 2041

转载 Qt源码分析之QObject

Qt的QObject1.试验代码:#include #include #include int main(int argc, char *argv[]){QApplication app(argc, argv);int size = sizeof(QObject);QPushButton* quit = new QPushButton("Quit");delete quit;r

2010-05-08 22:45:00 842 1

原创 从一个字符串中找出第一个不重复字符

 #include#includeint num[26]={0};int index[26]={0};int main(){ char *s="abbbccdefafgg "; int i; for(i=0;i<strlen(s);i++) { num[s[i]-a]++; index[s[i

2010-05-05 15:02:00 1119

原创 C++ C面试题

http://tieba.baidu.com/f?kz=558743069

2010-05-04 16:34:00 379

转载 C++中的位拷贝和值拷贝

为了便于说明我们以String类为例:首先定义String类,而并不实现其成员函数。Class String{public:    String(const char *ch=NULL);//默认构造函数    String(const String &str);//拷贝构造函数   ~String(void);   String &operator=(const String &str)

2010-05-02 15:51:00 484

原创 找主元素

一、问题    序列A[1..n]中是存在主元素? 若有请找出来。注: A 中主元素是指在A中出现次数多于? n/2?次的元素。二、算法1——穷举法时间复杂度:Q(n2) 三、算法2——利用排序算法时间复杂度:Q(nlogn) 四、算法3——利用找中值元素的算

2010-05-01 21:28:00 1323

原创 TCP/IP详解 第一章

    这一章是概述一些基本知识,我就从第二章开始吧,链路层     链路层主要有三个目的:1,为IP模块发送和接受IP数据报;                                 2,为ARP模块发送ARP请求和接受ARP应答;                                 3,为RARP模块发送RARP请求和接受RARP应答;说白了,就是链

2010-04-30 10:38:00 446

原创 TCP/IP详解 笔记

       最近在看这本书,感觉很不错,突然有想写读书笔记的冲动。水平有限怕贻笑大方,如果大家看到哪个地方写错请赐教。 

2010-04-29 02:25:00 554 1

原创 scanf getchar

#includestdio.h>void display(char cr,int lines,int width);int main(){    int ch, a;    int rows,cols;    void display(char cr,int lines,int width);        printf("Enter a character and two integer

2010-04-04 23:23:00 546

转载 二层,三层,四层交换机

二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:  (1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;  (2) 再去读 取包头中的目的MAC地址,并在地址表中查找相应的端口;  (

2010-04-04 22:14:00 551

程序员面试攻略下载(PDF第二版).

程序员面试攻略下载(PDF第二版).面试之前必看

2010-04-07

设计模式精解-GoF+23种设计模式解析

设计模式精解-GoF+23种设计模式解析,这是对设计模式详细的分析

2010-04-07

数据结构(C语言版)习题集

数据结构(C语言版)习题集,这是严蔚敏的数据结构的配套练习题

2010-04-07

C函数集(清华)巨好

C函数集(清华)巨好,很不错的,学习C语言必备的

2010-04-07

LinuxC编程实战

LinuxC编程实战,从实战的角度linux下C语言的编程

2010-04-03

全面的arm学习资料

比较全面的arm的学习资料,初学者可以下下来好好学习一下

2010-04-03

经典的wireshark教程

经典的wireshark教程,想学习抓包的分析的可以下下来学习学习,很不错的教程

2010-04-02

经典的背包问题九讲必看

经典的背包问题九讲必看,是对背包问题详细的讲解,想研究背包问题的一定要看一看

2010-04-02

网上收集的3G学习资料

一些有关3G的资料,会让你对3G有一个初步的认识

2010-04-02

TCP-IP详解卷1

这是本学习TCP/ip的经典书籍,卷一适合初学者学习,是学习TCP/ip的必备书籍

2010-03-26

C语言的著作----C语言深度解剖

C语言的经典著作,知识点非常的详细,深入简出的讲解了C语言,很值得的一看的

2010-03-15

空空如也

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

TA关注的人

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