- 博客(45)
- 资源 (128)
- 收藏
- 关注
原创 面试及总结2
众里寻他千百度 今天上完课回实验室后,把昨天面试的三道算法题,完完整整的全部自己重做实现了一遍(多种方法) 以下代码原则上,力争全部都是用C语言实现,但考虑到扩展性和兼容性,算法1使用了模板 测试环境:VS2008 测试结果: 测试通过/**** 欢迎访问杨刚的CSDN技术交流博客:http://blog.csdn.net/Sunboy_2050 ***/ /****************
2010-06-29 23:38:00 10958 10
原创 面试及总结
今天去百度大厦面试,职位是测试开发工程师(暑期实习),面试官是一位漂亮、友善的JJ 第一道很简单,问程序在内存有几个数据区,堆和栈区有啥区别第二道是两个有序数组(可能升序或降序),要求合并到一个大数组中,使其仍然有序,讲了大体思路,并用C简单写了实现代码第三道是给出int型的x、
2010-06-29 17:27:00 6843 20
原创 C语言部分函数原型实现
学习、研究库函数的实现,能使你考虑问题更加严谨、全面,培养良好的编程风格和习惯最近想学习一下C语言库函数的内部实现,于是自己写了简单的写了几个贴出以下代码,希望大家能够帮忙指正、优化、完善,特别是考虑不周和执行效率上给出指导意见调试环境:VS2008(C)// sysFunc.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include /******************
2010-06-24 15:12:00 7470 3
原创 C语言函数小集合
一、字符操作函数名: fputc功 能: 送一个字符到一个流中用 法: int fputc(int ch, FILE *stream); 函数名: fputs功 能: 送一个字符串到一个流中用 法: int fputs(char *string, FILE *stream); 函数名: sprintf功 能: 输出数据到一字符串中(而printf是输出到屏幕上)函数名: fread用 法: fre
2010-06-24 11:04:00 7166
原创 树与二叉树的深度优先与广度优先算法(递归与非递归)
本博客前面文章已对树与二叉树有过简单的介绍,本文主要是重点介绍有关二叉树的一些具体操作与应用阅读本文前,可以先参考本博客 各种基本算法实现小结(三)—— 树与二叉树 和 各种基本算法实现小结(二)—— 堆 栈二叉树深度层数、叶子数、节点数和层次遍历算法以及树的先序、中序、后序的递归与非递归实现测试环境:VS2008(C)#include "stdafx.h"#include #include #define DataType charint d_tree=0; /* tree'
2010-06-22 16:12:00 13685 3
原创 图的深度优先和广度优先算法(DFS递归与非递归)
<br />本博客前面文章已对图有过简单的介绍,本文主要是重点介绍有关图的一些具体操作与应用<br />阅读本文前,可以先参考本博客 各种基本算法实现小结(四)—— 图及其遍历 和 图的一些基本算法<br /> <br />无向图——邻接矩阵的深度优先和广度优先算法实现<br />测试环境:VS2008(C)<br />#include "stdafx.h"#include <stdlib.h>#include <malloc.h>#define INFINITY INT_MAX#
2010-06-21 17:52:00 12581 1
原创 图的基本算法实现(邻接矩阵与邻接表两种方法)
本博客前面文章已对图有过简单的介绍,本文主要是重点介绍有关图的一些具体操作与应用阅读本文前,可以先参考本博客 各种基本算法实现小结(四)—— 图及其遍历一、无向图1 无向图——邻接矩阵测试环境:VS2008#include "stdafx.h"#include #include #define MAX_VEX 20#define INFINITY 65535int *visited;struct _node{ int vex_num; struct _node *next
2010-06-21 12:15:00 21876 4
原创 模块划分
1. 什么是内聚?什么是耦合? 内聚,是从功能角度来衡量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系; 耦合,是从模块角度来衡量软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。耦合性,也称块间联系,指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则
2010-06-16 23:00:00 4101
原创 软件开发模型
一、 概述 软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码、测试和维护 阶段。 软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。对于不同的软件系统,可以采用不同的开发方法、使用不同的程序设计语言以及各种不同技能的人员参与工作、运用不同的管
2010-06-16 22:35:00 4658
原创 软件开发流程
一、 软件开发简介 软件(Software)简单的说就是那些在计算机中能看的着,但摸不着的东西,概念性的说软件也称为“软设备”,广义地说软件是指系统中的程序以及开发、使用程序所需要的所有文档的集合。软件分为系统软件和应用软件。 软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分 。 软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响二、
2010-06-16 22:01:00 14288
转载 CMMI
简介 CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成。 CMMI家族包括CMMI for Development, CMMI for Service和CMMI for Acquisition三个套装产品。CMMI的基本思想 1、解决软件项目过程改进难度增大问题 2、实现软件工程的并行与多学科组合 3、实现过程改进的最佳效益等级1. 初始级 软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义
2010-06-16 21:39:00 4422 1
转载 软件测试
软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。 软件测试概念 使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别. 它是帮助识别开发完成(中间或最终的版本)
2010-06-16 18:29:00 9646
原创 软件测试基础与常识
一、软件测试概述软件测试,是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试的目的,第一是确认软件的质量,其一方 面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。第三软件测
2010-06-16 16:23:00 5928
转载 精妙SQL语句
<br />下列语句部分是Mssql语句,不可以在access中使用。<br /><br />SQL分类: <br />DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) <br />DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) <br />DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)<br /><br />首先,简要介绍基础语句:<br />1、说明:创建数据库<br />CREATE D
2010-06-16 16:12:00 3799
转载 百度2010暑期实习笔试面试全面备战
<br />百度2010暑期实习笔试面试全面备战 <br />百度2010暑期实习网申将于2010年5月29日截止。 <br />笔试阶段 <br />5月30日前,对于通过了简历筛选的申请人百度将会通过系统发送笔试通知。注册时请务必填写正确有效的邮箱地址。 <br />面试阶段 <br />6月7日起,百度将陆续安排现场面试。 <br /> <br />大街网为大家准备了百度往年的实习和校园招聘笔试及面试经验,供大家参考。 <br />以下为百度2010校园招聘各岗位笔
2010-06-16 16:11:00 5633
转载 16个经典面试问题回答规律
<br />面试过程中,面试官会向应聘者发问,而应聘者的回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。本文对面 试中经常出现的一些典型问题进行了整理,并给出相应的回答思路和参考答案。读者无需过分关注分析的细节,关键是要从这些分析中“悟”出面试的规律及回答问 题的思维方式,达到“活学活用”。<br /><br />问题一:“请你自我介绍一下”<br />思路:1、这是面试的必考题目。2、介绍内容要与个人简历相一致。3、表述方式上尽量口语化。4、要切中要害,不谈
2010-06-16 15:58:00 4002
转载 一些算法拾贝
<br />kmp算法(算法是转的)+代码<br /> <br />此算法的确很难理解。但是只要你花耐性去理解;应该是可以理解的;!<br /><br />所以叫做KMP,是因为这个算法是由Knuth、Morris、Pratt三个提出来的,取了这三个人的名字的头一个字母。这时,或许你突然明白了AVL 树为什么叫AVL,或者Bellman-Ford为什么中间是一杠不是一个点。有时一个东西有七八个人研究过,那怎么命名呢?通常这个东西干脆就不用人名字命名了,免得发生争议,比如“3x+1问题”。扯远了。<br
2010-06-16 15:42:00 4047
转载 getchar()和EOF总结(转载)
大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition)第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getchar()的工作原理和EOF的用法。因此,感觉很有必要总结一下,不然,很多琐碎的知识点长时间过后就会淡忘的,只有写下来才是最好的方法。其实,getchar()最典型的程序也就几行代码而已。本人所用的环境是DebianGNU/Linux,在其他系统下也一样。一、g
2010-06-13 18:30:00 6543 2
转载 gcc和g++的区别
很多人不是很明白GCC与G++的区别gcc和g++都是GNU(组织)的一个编译器。误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序,注意,虽然c++是c的超集,但是两者对语法的要求是有区别的。C++的语法规则更加严谨一些。2.编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是因为gcc命令不能自动和C++程序使用的库联接,所以通常用g++来
2010-06-13 11:03:00 4313
原创 linux软链接和硬链接
简而言之:软链接相当于windows中的快捷方式硬链接相当于一个灾备系统,数据存放在两处,与复制不同的是两处之间存在同步机制,一处数据的改变会实时同步到另一处,另外一处数据如果被删除了,不会影响到另一处的数据. 下面是详细的介绍: 存在两种不同类型的链接,软链接和硬链接。修改其中一个,硬连接指向的是节点(inode),而软连接指向的是路径(path)软链接文件软链接又叫符号链接,这个文件包含了另一
2010-06-12 16:15:00 18133
转载 linux socket常用函数
socket() bind() connect() listen() accept() send() 和recv() sendto() 和recvfrom() close() 和shutdown() getpeername() gethostname()--------------------------------------------------------------------------------socket()我们使用系统调用socket()来获得
2010-06-12 13:10:00 9082
转载 TCP/IP协议详解
<br />1、TCP/IP协议栈<br /><br />四层模型 <br />TCP/IP这个协议遵守一个四层的模型概念:应用层、传输层、互联层和网络接口层。 <br /><br />网络接口层 <br />模型的基层是网络接口层。负责数据帧的发送和接收,帧是独立的网络信息传输单元。网络接口层将帧放在网上,或从网上把帧取下来。 <br /><br />互联层 <br />互联协议将数据包封装成internet数据报,并运行必要的路由算法。 <br />这里有四个互联协议: <b
2010-06-10 22:37:00 7877 1
原创 TCP/IP协议头部结构体(网摘小结)
// i386 is little_endian.#ifndef LITTLE_ENDIAN#define LITTLE_ENDIAN (1) //BYTE ORDER#else#error Redefine LITTLE_ORDER#endif//Mac头部,总长度14字节typedef struct _eth_hdr{unsigned char dstmac[6]; //目标mac地址unsigned char srcmac[6]; //源mac地址u
2010-06-10 21:30:00 37295 4
转载 TCP/IP数据报格式
IP数据报格式图1.IP数据报格式版本字段长度为4,用来表明建立数据报的IP版本,目前的IP版本是IPv4,IPv6正在发展中。IPv4的字段为0100 。首部长度(报头长度)指的是首部占32 bit字的数目,包括任何选项。由于它是一个4比特字段,因此首部最长为60个字节。15x32/8=60字节.IP首部始终是32 bit的整数倍.IP数据报报头的最小长度为20个字(不含填充字段和IP选项字段的IP报头是最常见的IP报头,为20个字节) 服务类型TOS(Type Of Service
2010-06-10 21:16:00 8760
转载 面试题:重写strcpy() 函数原型(转)
已知strcpy函数的原型是char* strcpy(char* strDest,const char* strSrc);1.不调用库函数,实现strcpy函数2.解释为什么要返回char*;1.strcpy的实现代码char* strcpy(char* strDest,const char* strSrc){ if((strDest == NULL) || (strSrc == NULL)) //[1] throw "Invalid Arguments";
2010-06-10 19:33:00 5797 1
转载 Bjarne Stroustrup's C++ Style and Technique FAQ
Bjarne Stroustrup's C++ Style and Technique FAQModified October 4, 2009Source: http://www2.research.att.com/~bs/bs_faq2.html#void-main==================================================================================These are questions about C++ Style and
2010-06-10 18:28:00 7576
转载 void main(void) - the Wrong Thing
<br />很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /* ... */ } is not and never has been C++, nor has it even been C.( void main( ) 从来就不存在于 C++ 或者 C )。下面我分别说一下
2010-06-10 18:18:00 3933
转载 Linux各种文件后缀名解说
首先要说明的是在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。而gcc则通过后缀来区别输入文件的类别,下面我们来介绍gcc所遵循的部分约定规则。一般.c为后缀的文件,C语言源代码文件;.a为后缀的文件,是由目标文件构成的档案库文件;.C,.cc或.cxx 为后缀的文件,是C++源代码文件;.h为后缀的文件,是程序所包含的头文件;.i 为后缀的文件,是已经预处理过的C源代码文件;.ii为后缀的文件,是已经预处理过的C++源代码文件;.m
2010-06-10 10:47:00 5740
转载 SQL Server 索引结构及其使用
SQL Server 索引结构及其使用(本文适合中级读者)一、深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的前几页,因为“安”的拼音是“an
2010-06-09 22:39:00 3323
转载 索引的优点与缺点
一、建立方向索引的不利因素(优点)第一, 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二, 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。第三, 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。第四, 在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。第五, 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。 二、建立方向索引的不利因素(缺点)也许会有人要问:增加索引有如此多的
2010-06-09 21:58:00 5988 1
转载 Apache Solr:基于Lucene的可扩展集群搜索服务器
SolrSolr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果;Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。文档通过Ht
2010-06-09 16:20:00 5687
转载 Apache Lucene与Lucene.Net——全文检索服务器
lucene学习教程1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。 2 lucene的工作方式 lucene提供的服务实际包含两部分:一入一出。所谓入是写入,即将你提供的源(本质是字符串)写入索引或者将其从索引中删除;所谓出是读出,即向用户提供全文搜索服务,让用户可以通过关键词定位源。 2.1写入流程 源字符
2010-06-09 15:16:00 6237
转载 了解搜索引擎技术
关于搜素引擎搜索引擎(search engine)是指根据一定的策略、运用特定的计算机程序搜集互联网上的信息,在对信息进行组织和处理后,并将处理后的信息显示给用户,是为用户提供检索服务的系统。 全文搜索引擎是名副其实的搜索引擎,国外代表有Google,国内则有著名的百度搜索。它们从互联网提取各个网站的信息(以网页文字为主),建立起数据库,并能检索与用户查询条件相匹配的记录,按一定的排列顺序返回结果。根据搜索结果来源的不同,全文搜索引擎可分为两类,一类拥有自己的检索程序(Indexer),俗称“蜘蛛”
2010-06-09 14:53:00 4237
原创 倒排索引
简介 倒排索引源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(inverted index)。带有倒排索引的文件我们称为倒排索引文件,简称倒排文件(inverted file)。 用途 倒排文件(倒排索引),索引对象是文档或者文档集合中的单词等,用来存储这些单
2010-06-09 14:41:00 8872
原创 数据库索引原理理解
以前对数据库的理解总是停留在使用的阶段,没有去研究过深层次的东西,这两天正好有空(其实也是工作需要),看了一下数据库索引的一些基础的东西,希望通过这篇博文,整理一下自己的思路。1.什么是索引?我想这个用过数据库的人都应该知道了,索引类似于书的目录,主要用于提高查询效率
2010-06-09 14:22:00 3606
原创 BTree,B-Tree,B+Tree,B*Tree都是什么
B树、B-树、B+树、B*树都是什么B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关键字小,就进入左儿子;如果比结点关键字大,就进入右儿子;如果左儿子或右儿子的指针为空,则
2010-06-09 14:13:00 5242 2
原创 对极限编程四个核心的理解
极限编程的核心有四个:交流、简单、反馈、勇气这四个原则大家在平时做项目的过程中一定也注意到了,但是两位大师 Kent Beck 和 Martin Fowler 能够把这四点归结在一起,使他们能够共同组成极限编程这架四轮马车,却是一个不小的创造的。下面仅就自己的学习和简单的实践过程中遇到的问题来谈谈自己对这四个核心的一些理解。一、 交流 1) 开发人员与客户的交流 这一点与传统的软件工
2010-06-09 12:04:00 4876 1
转载 学习算法之路(转)
学习算法之路(转)路漫漫其修远兮,吾将上下而求索。。。========================================================第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码, 因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打 出来. 1.最短路(Floyd、Dijstra,BellmanFord) 2.最小生成树(先写个prim,kruscal要用并查集,不好写) 3.大数
2010-06-08 21:53:00 9433 1
原创 各种基本算法实现小结(七)—— 常用算法
各种基本算法实现小结(七)—— 常用算法(均已测试通过)======================================================================1、判断素数测试环境:VC 6.0 (C)#include #include int is_sushu(int n){ int i, mid; mid=(int)sqrt(n); for(i=
2010-06-03 21:56:00 13606 1
原创 各种基本算法实现小结(六)—— 查找算法
各种基本算法实现小结(六)—— 查找算法(均已测试通过)=================================================================== 1、简单查找在一组无序数列中,查找特定某个数值,并返回其位置pos测试环境:VC 6.0 (C)#include #include #include #define MAX 101void input
2010-06-03 21:55:00 12755 1
SecureCRT 7.0.2 For Mac 10.12.3 完美破解版
2017-04-04
FatJar打包工具
2014-02-28
Android MotionEvent 坐标获取
2013-04-07
亚马逊(Amazon)称霸电商的秘诀
2013-04-05
Android中visibility属性
2013-04-03
Android与js交互实例
2013-04-01
Google Play 应用内支付(In-app Billing V2 + V3)
2012-12-18
VMware 8安装Mac OS X 10.8 Lion系统及工具包
2012-10-30
VMware 8安装Mac OS X 10.7 Lion
2012-10-18
Android反编译工具包(升级)官方绿色版
2012-10-10
JSP 页面访问用户验证
2012-09-29
Android反编译工具
2012-08-21
Android 创建与解析XML Pull方式
2012-04-30
Android 创建与解析XML Dom方式
2012-04-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人