指针的本质
摘要:转载于http://www.cnblogs.com/Logic0/archive/2010/04/22/1850372.htmlc与机器联系紧密,抽象程度不是太高,所以机器层面的地址也拿过来了,改名叫指针。遇到指针,要读成“地址变量”,其实指针就是一个存放整数(地址就是一个整数)的变量而已,多少级都是如此。一、定义一个指针 int * p; 与访问指针指向的变量 * p;这两个语句里面的 * ,是两个不同的符号,要区别对待,不要把他看成一样的东西。第一个*表示:要定义变量p是个存放地址的变量。第二个*表示:要寻址了,要找p里存放的地址指向的变量了。二、语句int *p;有三个意思:1. p是一
阅读全文
posted @
2013-07-25 21:21
-赶鸭子上架-
阅读(217)
推荐(0) 编辑
剑指offer--面试题4
摘要:题目:替换字符串中的空格为“%20”。说明:在浏览器的地址栏中输入某个网址,在解析过程中会看到类似“%20”的字样,这应该就是网络编程涉及的内容。。。 该题总体来说比较简单(连我都能想到!),个人认为考查的是思维的敏捷。1、先按照自己的思路编程如下://以下为开辟新的存储单元,并在新的存储上执行替换O(n)#include "stdafx.h"#include using namespace std;/*int main(int argc, char* argv[]){ char String[] = "We are happy."; char* str
阅读全文
posted @
2013-07-25 19:00
-赶鸭子上架-
阅读(345)
推荐(0) 编辑
指针和数组--小总结
摘要:一、总体来说,1、对任意数组和指针:数组名可认为是指向数组中第一个元素的指针。虽然是地址,但不同于指针,数组名不是变量,而是常量地址,所以不能修改数组名!!!比如:int array0[5] = {0};int array1[5] = {0};array0 = array1; //试图对数组名array0赋值,这是绝对错误的!2、还有对数组名决不能进行++或--操作!!!(自己老是犯这样的低级错误!必改正之!)比如:int array0[5] = {0};int a_temp = *(array0++); //绝对错误!3、无论什么类型,在输出结果时,必定会有相应的存储空间存储该结果;所以,必
阅读全文
posted @
2013-07-25 12:54
-赶鸭子上架-
阅读(245)
推荐(0) 编辑
《剑指Offer》- 面试题3
摘要:《剑指Offer——名企面试官精讲典型编程题》 面试题3: 二维数组元素从左到右、从上到下递增,输入一个二维数组和一个整数, 查找该整数。自己的思路:有序条件下进行查找,当然最简单的是顺序查找(O(n))。但更好的方法如下: 1、二维数组第1和最后一个元素分别为A,B,同时为最小和最大,先判断输入整数的范围 在A~B之间,转到2; 2、按行分情况查找,每一行采用折半查找(O(logn))。说明:函数返回true代表查找成功,查找位置用引用返回。//《剑指Offer——名企面试官精讲典型编程题》// 面试题3:#include "stdafx.h"#includ...
阅读全文
posted @
2013-07-24 21:07
-赶鸭子上架-
阅读(576)
推荐(0) 编辑
剑指offer--3题
摘要:题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。第一感觉:看到这道题后,我先想的便是列出所有子数组,求取和再在这些和中求取最大值,这肯定是最简单的了!自己所写的代码如下:#include "stdafx.h"#include int SubArraySumMax(int arr[], int len);using na
阅读全文
posted @
2013-07-18 09:49
-赶鸭子上架-
阅读(274)
推荐(0) 编辑
剑指offer--7题
摘要:*题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。*句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。*例如输入“Iamastudent.”,则输出“student.aamI”。终于有一道题的思路是一样的了! 感觉自己的基础太差了!思路:整体反转+单词再反转。//时间复杂度为O(n)//自己编写#include "stdafx.h"#includevoid ReserveSentence(char str[]);using namespace std;int main(int argc, char* argv[]){ char str[]
阅读全文
posted @
2013-07-15 11:03
-赶鸭子上架-
阅读(208)
推荐(0) 编辑
剑指offer--13题
摘要:#include "stdafx.h"#include using namespace std;void FirstNoRepeatCh(const char str[], char& ch);int main(int argc, char* argv[]){ const char* str = "cdceasafggsfrrtkkxx"; char ch = '@'; FirstNoRepeatCh(str,ch); if(ch == '@') cout<<"No Find!"&l
阅读全文
posted @
2013-07-14 10:18
-赶鸭子上架-
阅读(255)
推荐(0) 编辑
剑指offer-17题
摘要:题目要求:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。分析:这道题能够很好地反应出程序员的思维和编程习惯。的确,自己编写的程序代码如下:#include "stdafx.h"#includevoid String2Num(const char* str);using namespace std;int main(int argc, char* argv[]){ const char* str = "2343121"; String2Num(str); return 0;}void
阅读全文
posted @
2013-07-11 22:48
-赶鸭子上架-
阅读(246)
推荐(0) 编辑
opencv中的Bayes分类器应用实例
摘要:转载:http://blog.csdn.net/yang_xian521/article/details/6967515PS:很多时候,我们并不需要特别精通某个理论,而且有的时候即便你非常精通,但是当你真正去用它时,也会错误百出。 也就是说,要做到会用(这是终极目标),出现问题时,能够快速解决就ok了。对理论的熟悉,可以通过简单的实例来加深。 最厉害的,往往是那些深入浅出的人。。。openCV中贝叶斯分类器相关的API及其用法举例openCV中与贝叶斯分类器相关的API函数有以下几个:(1)CvNormalBayesClassifier::CvNormalBayesClassifier...
阅读全文
posted @
2013-07-10 17:57
-赶鸭子上架-
阅读(1532)
推荐(0) 编辑
剑指offer--21题
摘要:#include "stdafx.h"#includeusing namespace std;void LeftRotateString(char* str,int n);void StringReverse(char* pStart, char* pEnd);int main(int argc, char* argv[]){ char str[]="abcdef"; //将"abcdef"拷贝到str[]中,str指向拷贝字符串的首址 int n=3; LeftRotateString(str,n); return 0;}/*voi
阅读全文
posted @
2013-07-10 11:49
-赶鸭子上架-
阅读(321)
推荐(0) 编辑