
C/C++
u010944926
这个作者很懒,什么都没留下…
展开
-
一个简单的 A 星算法的实现
在写自己的 2D RPG 作品的时候,经常都在想,要不要加上自动寻路功能呢 ??寻路算法的学习难度已经是家喻户晓了,刚开始学习编程的时候,我总是尽力回避那些高深复杂的算法和原理,但是,一想到以后如果要用到这些算法,而自己又不懂的话,那就糟了,所以,还是硬着头皮学习 A 星算法,虽然没有抱多大的期待,不过在按下 F5 之后看到那正确的运行结果,真心被狠狠地治愈了一顿 ... 好吧,废话少说,我们就直转载 2014-02-22 14:05:57 · 692 阅读 · 0 评论 -
C++ limits头文件的用法(numeric_limits)
初学C++的时候,对这个模板很陌生,不知道它到底是做什么用的,今天拿起《C++标准程序库》,出现了它的讨论,所以决定好好研究一番。1. numeric_limits是什么?(A)《C++标准程序库》:[cpp] view plaincop一般来说,数值型别的极值是一个与平台相关的特性。C++标准程序库通过template nu转载 2014-03-07 13:45:30 · 579 阅读 · 0 评论 -
十种排序算法总结(冒泡、插入、选择、希尔、归并、堆、快速,计数,桶,基数)
首先声明一下,本文只对十种排序算法做简单总结,并参照一些资料给出自己的代码实现,并没有对某种算法理论讲解,更详细的了解可以参考以下资料(本人参考):1、《data structure and algorithm analysis in c 》2、《大话数据结构》3、http://blog.youkuaiyun.com/morewindows/article/details/79转载 2014-03-06 20:20:31 · 526 阅读 · 0 评论 -
C++各大开源库(转)
C++各大有名库的介绍之C++标准库 标准库中提供了C++程序的基本设施。虽然C++标准库随着C++标准折腾了许多年,直到标准的出台才正式定型,但是在标准库的实现上却很令人欣慰得看到多种实现,并且已被实践证明为有工业级别强度的佳作。1、Dinkumware C++ Library参考站点:http://www.dinkumware.com/P.J. Plauger转载 2014-03-04 14:43:18 · 489 阅读 · 0 评论 -
C++私有成员访问
前阵子,和同事交流的时候,听我说可以在外部访问C++类的私有成员变量时,表示很惊讶,我告诉他,不仅可以访问,而且方法非常简单。现在再重新整理一下 Class A{private: int a; char b;public: void printfA(){std::cout A(int n):a(n转载 2014-03-05 10:06:48 · 804 阅读 · 0 评论 -
C++之类,类的数组,一次实例化多个类的实例。
你看到的这个文章来自于http://www.cnblogs.com/ayanmw听说 C++的class比struct高级,但是我经常使用struct的指针,而且用起来很灵活非常强大,就是许多事情做起来要比 类 复杂一些,比如构造函数,析构函数。函数指针赋值 虽然可以模拟成员函数,但是不方便。所以使用C++的类,但是我有一个疑惑,C++的类可以按照struct那个样子使用么?或许我应该转载 2014-03-01 12:02:10 · 2791 阅读 · 0 评论 -
宏定义的黑魔法 - 宏菜鸟起飞手册
转自OneV's Den的博客 宏定义在C系开发中可以说占有举足轻重的作用。底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行。而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多。但是使用宏定义的好处是不言自明的,在节省工作量的同时,代码可读性大大增加。 如果想成为一个能写出漂亮优雅代码转载 2014-02-14 11:54:04 · 513 阅读 · 0 评论 -
c语言可变参数
首先在介绍可变参数表函数的设计之前,我们先来介绍一下最经典的可变参数表printf函数的实现原理。一、printf函数的实现原理在C/C++中,对函数参数的扫描是从后向前的。C/C++的函数参数是通过压入堆栈的方式来给函数传参数的(堆栈是一种先进后出的数据结构),最先压入的参数最后出来,在计算机的内存中,数据有2块,一块是堆,一块是栈(函数参数及局部变量在这里),而栈是从内存的高地址向低地转载 2014-02-14 13:33:31 · 470 阅读 · 0 评论 -
AVL树
定义:一棵空二叉树是AVL树,如果T是非空二叉树,TL和TR分别是其左子树和右子树,则当且仅当TL和TR都为AVL树且|HL-HR|由定义知道一个AVL树的任何节点的左右子树的高度之差不超过1,这是AVL树最基本的特征。AVL树的高度:(固定节点数计算最大高度)记N_h为一棵高度为h的AVL树具有的最小节点数,则最坏情况是它的左右子树的高度不等,一个是N_(转载 2014-02-25 15:51:41 · 1036 阅读 · 0 评论 -
找工作笔试面试那些事儿(3)---内存管理那些事
作者:寒小阳时间:2013年8月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10676931。声明:版权所有,转载请注明出处,谢谢。七、内存管理 在写C/C++程序的时候,最头疼的部分一定包括内存管理,一提到内存管理总是提心吊胆,但是又不可避免地常常会遇到,而这块的知识也是公司招聘的一个评价转载 2014-03-08 10:57:18 · 634 阅读 · 0 评论 -
函数原型如下void splitdou(string s,vector<string>& ret) 意思就是把string对象中的字符串以逗号分割(string 中有逗号),存到容器ret中。存可以用
void splitdou(string s,vector& ret) { size_t last = 0; size_t index=s.find_first_of(',',last); while (index!=std::string::npos) { ret.push_back(s.substr(l转载 2014-04-10 19:35:21 · 875 阅读 · 0 评论 -
计算结构体的大小
结构体中的成员可以是不同的数据类型,成员按照定义时的顺序依次存储在连续的内存空间。和数组不一样的是,结构体的大小不是所有成员大小简单的相加,需要考虑到系统在存储结构体变量时的地址对齐问题。看下面这样的一个结构体: struct stu1 { int i; char c; int j; }; 先介绍一个相关的概念——偏移量。偏移量指的是结构体变量中成员的地址和结构体变量地址的差。结构体转载 2014-04-10 20:16:10 · 389 阅读 · 0 评论 -
C/C++ 笔试、面试题目大汇总
这些东西有点烦,有点无聊。如果要去C++面试就看看吧。几年前网上搜索的。刚才看到,就整理一下,里面有些被我改了,感觉之前说的不对或不完善。 1.求下面函数的返回值( 微软)int func(x) { int countx =0; while(x) { countx ++; x = x&(x-1); } return countx; }转载 2014-04-09 22:37:39 · 457 阅读 · 0 评论 -
linux c语言 select函数用法
Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所转载 2014-04-07 15:10:42 · 427 阅读 · 0 评论 -
C++中各种类型的成员变量的初始化方法(ZZ)
c++各种不同类型成员根据是否static 、时候const类型的初始化方法不尽相同,java的语法就没有这么复杂,怪的得那么多人都跑去学Java了。以前面试时被人问到这个问题回答不出来,写代码时也经常搞乱了,这里翻了下书,总结一下。-----------------Test.h----------------------------#pragma onceclass Te转载 2014-04-16 19:50:07 · 481 阅读 · 0 评论 -
C++ 排序函数 sort(),qsort()的用法
想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qsort,总算把自己解脱了~所以自己总结了一下,首先看sort函数见下表: 函数名功能描述sort对给定区间所有元素进行排序stable_sort对给定区间所有元素进行稳定排序partial_sort对给定区间所有元素部分排序转载 2014-03-10 10:20:07 · 452 阅读 · 0 评论 -
来谈谈C++ 位运算 & | << >> ^ ~ %
老实说,我对+ = * / % && || ==一些比较简单的运算符比较熟悉。对位运算就陌生了,主要用的少。我觉得高手用的会比较多,因为位运算速度比较快。位运算应该适用于大多数的语言,不限于c++ 1.& 如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。注:下面都用8位的 unsigned char 来做例子。 目录 [隐藏]转载 2014-03-10 11:05:00 · 476 阅读 · 0 评论 -
组合算法 C++高效实现 (二进制辅助法)
1.什么是数学中的组合?和排列不同的是,在组合中取出元素的顺序则不在考虑之中。从个元素中取出个元素,这个元素可能出现的组合数的总数量为:以1,2,3,4,5中选2个数为例,总共的组合为:1,21,31,41,52,32,42,53,43,54,52.在计算机中如何转载 2014-03-10 11:20:00 · 739 阅读 · 0 评论 -
C/C++宏连接符'##'和'#'的用法
C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念)。下面对常遇到的宏的使用问题做了简单总结。关 于#和##在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏 变量通过替换后在其左右各加上一个双引号。比如下面代码中的宏:#define WARN_IF(EXP) \转载 2014-02-13 11:09:39 · 6016 阅读 · 0 评论 -
二叉树的基本概念
1.二叉树 二叉树(Binary Tree)是个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个结点。二叉树是有序的,即若将其左、右子树颠倒,就成为另一棵不同的二叉树。即使树中结点只有一棵子树,也要区分它是左子树还是右子树。因此二叉树具有五种基本形转载 2014-02-25 11:27:23 · 2819 阅读 · 0 评论 -
从头说12种排序算法:原理、图解、动画视频演示、代码以及笔试面试题目中的应用
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/12163251。声明:版权所有,转载请注明出处,谢谢。0、前言 从这一部分开始直接切入我们计算机互联网笔试面试中的重头戏算法了,初始的想法是找一条主线,比如数据结构或者解题思路方法,将博主见过做过整理过的算转载 2014-02-24 11:27:56 · 1129 阅读 · 0 评论 -
经典排序算法之——快速排序
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快速转载 2014-02-24 14:12:57 · 391 阅读 · 0 评论 -
测试题答案
一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。 提示:这里“零值”可以是0 , 0.0 , FALSE 或者“空指针”。例如 int 变量 n 与“零值”比较的 if 语句为: if ( n == 0 ) if ( n != 0 ) 以此类推。 请写出 B转载 2014-02-24 11:37:09 · 612 阅读 · 0 评论 -
找工作笔试面试那些事儿(6)---简单测试题
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10894159。声明:版权所有,转载请注明出处,谢谢。C/C++测试题 前几个部分从编程风格、函数设计、内存管理和类的一些相关知识和注意点出发,对C/C++基础知识和笔试面试易考察的点进行转载 2014-02-24 11:36:35 · 546 阅读 · 0 评论 -
构造函数、析构函数和赋值函数
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10833931。声明:版权所有,转载请注明出处,谢谢。类的构造函数、析构函数与赋值函数 学过C++的人都说自己知道构造函数、析构函数与赋值函数。它们看似太普通,以致让人容易麻痹大意,但请你转载 2014-02-24 11:35:49 · 534 阅读 · 0 评论 -
C++函数高级特征
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10827689。声明:版权所有,转载请注明出处,谢谢。C++函数的高级特征 重载(overloaded)、内联(inline)、const 和virtual是C++独有而C不具有的四种机制。其中重载和转载 2014-02-24 11:35:05 · 643 阅读 · 0 评论 -
从头说catalan数及笔试面试里那些相关的问题
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/11938973。声明:版权所有,转载请注明出处,谢谢。0、前言当年博主自己参加校招笔试面试时就遇到过几次catalan数相关的题目,今年又到了互联网招聘季,翻看下近期各大公司的笔试面试题,发现它依旧是很容易被考察的点。尴尬的是转载 2014-02-24 11:29:28 · 456 阅读 · 0 评论 -
数组字符串那些经典算法:最大子序列和,最长递增子序列,最长公共子串,最长公共子序列,字符串编辑距离,最长不重复子串,最长回文子串
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/11969497。声明:版权所有,转载请注明出处,谢谢。0、前言 这一部分的内容原本是打算在之后的字符串或者数组专题里面写的,但看着目前火热进行的各家互联网公司笔试面试中,出现了其中转载 2014-02-24 10:08:23 · 621 阅读 · 0 评论 -
C,C++基础和编程风格(1)
作者:寒小阳时间:2013年8月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10473845。声明:版权所有,转载请注明出处,谢谢。前言 眼看着又要到一年一度的找工作季了,遥想去年这会儿,学校同学们也都是一副要上战场似得枕戈待旦整装待发的情景。想来自己当时笔试面试也确实参加了不少,无奈技术和智转载 2014-02-24 11:32:00 · 576 阅读 · 0 评论 -
C,C++基础和编程风格(2)
作者:寒小阳时间:2013年8月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10515417。声明:版权所有,转载请注明出处,谢谢。四、表达式和基本语句4.1 运算符与复合表达式 首先非常重要的一个点是C/C++运算符的优先级问题,下图为总结的一张表,结合律特殊的运算符已经用黑体加转载 2014-02-24 11:32:47 · 598 阅读 · 0 评论 -
快速检测空间三角形相交算法的代码实现(Devillers & Guigue算法)
Devillers & Guigue算法( 简称Devillers 算法) 通过三角形各顶点构成的行列式正负的几何意义来判断三角形中点、线、面之间的相对位置关系,从而判断两三角形是否相交。其基本原理如下:给定空间四个点:a(ax,ay,az),b=(bx,by,bz),c=(cx,cy,cz),d=(dx,dy,dz),定义行列式如下: [ a, b, c, d] 采用右转载 2014-02-25 08:39:01 · 5633 阅读 · 1 评论 -
最长公共子序列(LCS)问题
刚才上课,最后老师布置了一个作业,做完交上就可以走了。由于上课没有认真听讲,也没有老师的课件,我擦,直接傻了。看着别人都很快的走出了教室,我那个心啊.... 题目这样:求两个字符串的最大公共子序列。 不是让写代码,利用动态规划的思想,求出最大公共子序列,并且要把那个图(下面的图1)画出来。 下课后,翻出老师的课件,仔细看了看,原来只要理解了原理,3分钟就可转载 2014-02-24 15:55:22 · 1046 阅读 · 0 评论 -
迅雷近几年笔试题及其分析
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/11533437。声明:版权所有,转载请注明出处,谢谢。前言: 今年迅雷依旧是动作很快的公司之一,才9月初就已经笔试完了,看来还是想赶在互联网公司招聘大潮前抢些人。虽然传闻迅雷工作挺累的,然后待遇一般(不确定数据可靠度转载 2014-02-24 11:43:27 · 1060 阅读 · 0 评论 -
内存管理那些事
作者:寒小阳时间:2013年8月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10676931。声明:版权所有,转载请注明出处,谢谢。七、内存管理 在写C/C++程序的时候,最头疼的部分一定包括内存管理,一提到内存管理总是提心吊胆,但是又不可避免地常常会遇到,而这块的知识也是公司招聘的一个评价转载 2014-02-24 11:34:17 · 532 阅读 · 0 评论 -
常问的CC++基础题
这一部分是C/C++程序员在面试的时候会被问到的一些题目的汇总。来源于基本笔试面试书籍,可能有一部分题比较老,但是这也算是基础中的基础,就归纳归纳放上来了。大牛们看到一笑而过就好,普通人看看要是能补上一两个模糊的知识点,也算有点进步吧。1.简述变量声明和定义的区别。 为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,但是只在转载 2014-02-24 11:30:45 · 472 阅读 · 0 评论 -
美团网2014校招笔试题及解答(长沙站+哈尔滨站)
作者:寒小阳时间:2013年9月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/11924701。声明:版权所有,转载请注明出处,谢谢。题目是网上找的,答案博主自己做的,有不当之处或者有更好的方法欢迎留言!第一题一堆硬币,一个机器人,如果是反的就翻正,如果是正的就抛掷一次,无穷多次后,求正反转载 2014-02-24 11:46:26 · 1073 阅读 · 0 评论 -
近几年微软笔试题汇总分类解析
作者:寒小阳时间:2013年10月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/12616423。声明:版权所有,转载请注明出处,谢谢。 这里对2010年至今的微软笔试题做了一个汇总和分类,然后进行了解答和分析,每一类题中涉及到的知识点和方法在很多别家公司的笔试面试中也有用,希望下面的内转载 2014-02-24 11:44:24 · 1034 阅读 · 0 评论 -
函数那些事
作者:寒小阳时间:2013年8月。出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/10539723。声明:版权所有,转载请注明出处,谢谢。六、函数那些事 函数是C++/C 程序的基本功能单元,当然是笔试面试重点考察内容。函数接口的两个要素是参数和返回值。C 语言中,函数的参数和返回值的传递方式转载 2014-02-24 11:33:23 · 451 阅读 · 0 评论 -
Cocos2D-X事件处理机制之触屏事件
游戏主要是玩家和程序的交流。无论你的动画做得多么生动,特效做得如何炫,游戏还是要和玩家进行互动和交流。在智能手机中,主要的输入操作是通过触摸屏幕、重力感应等方式实现的,而输入文字主要通过虚拟键盘等实现的。下面就让我们一起来学习触屏事件的使用。 一、触屏事件 在Cocos2D-X中,继承自触屏代理协议CCTouchDelegate转载 2014-04-13 12:08:34 · 602 阅读 · 0 评论