2013年9月7日

分治法排序

摘要: 分治模式在每一层递归上都有三个步骤:(1)分解(divide):将原问题分解成一系列子问题;(2)解决(conquer):递归的解各个子问题。若子问题足够小,则直接求解;(3)合并(combine):将子问题的结果合并成原问题的解。合并排序(merge sort)算法完全依照了上述模式,直观的操作如下:a.分解:将n个元素分成各含n/2个元素的子序列;b.解决:用合并排序法对两个子序列递归地排序;c.合并:合并两个已排序的子序列以得到排序结果。假设子数组A[p...q]和A[q+1...r]都已排好序,并将它们合并成一个已排序的子数组代替当前子数组A[p...r]伪代码实现如下:Merge_A 阅读全文

posted @ 2013-09-07 10:40 大浪 淘沙 阅读(929) 评论(0) 推荐(0) 编辑

2013年9月6日

String类定义(转)

摘要: 已知String类定义如下:class String{ public: String(const char *str = NULL); // 通用构造函数 String(const String &another); // 拷贝构造函数 ~ String(); // 析构函数 String & operater =(const String &rhs); // 赋值函数 private: char *m_data; // 用于保存字符串};尝试写出类的成员函数实现。答案:String::String(const ... 阅读全文

posted @ 2013-09-06 11:06 大浪 淘沙 阅读(339) 评论(0) 推荐(0) 编辑

2013年9月3日

链表

摘要: 题1:已知链表的头节点head,写一个函数把这个链表逆序#includeusing namespace std;typedef struct Node{ int data; struct Node *next;}Node;Node* CreatList(int n){ //创建链表 Node* L= new (Node); //(Node*)malloc(sizeof(Node)) cout>L->data; L->next=NULL; Node* p; for(int i=n-1;i>0;i--) { p= new (... 阅读全文

posted @ 2013-09-03 15:20 大浪 淘沙 阅读(224) 评论(0) 推荐(1) 编辑

2013年9月2日

C语言的那些秘密之---函数返回局部变量(转)

摘要: 原文地址:http://blog.csdn.net/haiwil/article/details/6691854/ 一般的来说,函数是可以返回局部变量的。 局部变量的作用域只在函数内部,在函数返回后,局部变量的内存已经释放了。因此,如果函数返回的是局部变量的值,不涉及地址,程序不会出错。但是如果返回的是局部变量的地址(指针)的话,程序运行后会出错。因为函数只是把指针复制后返回了,但是指针指向的内容已经被释放了,这样指针指向的内容就是不可预料的内容,调用就会出错。准确的来说,函数不能通过返回指向栈内存的指针(注意这里指的是栈,返回指向堆内存的指针是可以的)。 下面以函数返回局部变量的指针举几个典 阅读全文

posted @ 2013-09-02 16:18 大浪 淘沙 阅读(501) 评论(0) 推荐(0) 编辑

2013年8月31日

水仙花数(自恋数)

摘要: /*************************************************************设计一个函数找出水仙花数。水仙花数是指一个n位数*如:3位水仙花数:153=1^3 + 5^3 +3^3* 4位水仙花数:1634=1^4 +6^4 + 3^4 +4^4*请问如何用C++实现?【美国著名软件企业GS公司2007年11月面试题】**************************************************************/下面是自己用c写的一个代码,程序员面试宝典P91~~~有C++实现。#include#includeint 阅读全文

posted @ 2013-08-31 10:37 大浪 淘沙 阅读(772) 评论(0) 推荐(0) 编辑

2013年8月30日

zigzag数组

摘要: 题:输入n,求一个nXn矩阵,规定矩阵沿45度线递增,形成zigzag数组。请问如何用C++实现(中国台湾著名硬件公司2007年11月面试题)下面是自己用C写的一个代码,在程序员面试宝典(第二版)P89~~有C++实现。/*打印zigzag数组 0 1 5 6 14 15 27 28 2 4 7 13 16 26 29 42 3 8 12 17 25 30 41 43 9 11 18 24 31 40 44 53 10 19 23 32 39 45 52 54 20 22 33 ... 阅读全文

posted @ 2013-08-30 22:06 大浪 淘沙 阅读(335) 评论(0) 推荐(0) 编辑

ini文件的读写

摘要: 题目: INI文件操作库INI文件就是扩展名为“ini”的文件。在Windows系统中,INI文件很多,最重要的就是“System.ini”、 “System32.ini”和“Win.ini”。该文件主要存放用户所做的选择以及系统的各种参数。用户可以通过修改INI文件,来改变应用程序和系统的很多配置。 首先,我们先来了解下INI文件的结构。INI文件是一种按照特定方式排列的文本文件。每一个INI文件构成都非常类似,由若干段落(section)组成。在每个段落下面,是若干个以单个单词开头的关键词(key)和一个等号,等号右边的就是关键字对应的值(value)。即一般形式如下:[Section1] 阅读全文

posted @ 2013-08-30 19:15 大浪 淘沙 阅读(1406) 评论(0) 推荐(0) 编辑

华为2013年9月技术面面试题(一)

摘要: 这题是螺旋数组问题,下面是自己用C写的代码:题一:例如输入5,打印出如下数组1 2 3 4 5 16 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9若输入n,则打印出与上述例子中规律相同的NXN数组。#include #include #define N 9void Output_Matrix(int n);int a[10][10];int main(){ Output_Matrix(N); for(int i=0;ii;j--) //行号为n-i-1,列号范围为n-1-i到... 阅读全文

posted @ 2013-08-30 15:54 大浪 淘沙 阅读(395) 评论(0) 推荐(0) 编辑

华为2013年9月技术面面试题(二)

摘要: 题2:统计字符串中各个单词出现的次数,最多100个英文单词。如:"I am am aa bb cc bb aa",则I:1,am:2,aa:2,bb:2,cc:1方法一:#include #include #includevoid Count_Word(char* buf);int main(){ char* word="I am am aa bb cc bb aa"; Count_Word(word); return 0;}void Count_Word(char* buf){ int m=0; if(buf==NULL) printf("E 阅读全文

posted @ 2013-08-30 12:52 大浪 淘沙 阅读(427) 评论(0) 推荐(0) 编辑

2013年8月23日

zigbee PRO 事件

摘要: 文件JN-UG-3048-ZigBee-PRO.pdf6.2.1 ZDO Stack EventsThe ZDO stack events are used to report information to the application. They areenumerated in ZPS_teAfEventType, shown below, and are described in Table 3.typedef enum {ZPS_EVENT_NONE,ZPS_EVENT_APS_DATA_INDICATION,ZPS_EVENT_APS_DATA_CONFIRM,ZPS_EVENT_ 阅读全文

posted @ 2013-08-23 11:15 大浪 淘沙 阅读(921) 评论(0) 推荐(0) 编辑

导航