这两天较系统的看了下C++的基本用法,对比自己对Java理解,感觉就是C++特性远远多于Java,语法上兼容C,更加贴近系统和底层,对内存操作非常的灵活。如:
C++中类的对象可以开辟在栈空间中。Java类的对象都必须用new关键字开辟在堆中;
C++的基本数据类型也可以用new开辟在堆中。Java基本数据类型只能开辟在栈中,除非使用包装类包装成对象;
C++用new开辟的内存必须手动delete,否则内存泄露。Java则有著名的垃圾回收;
C++传参可以传值和传引用,也可以配合指针传对象地址,自己来决定。...
                            
                            
                                分类:
编程语言   时间:
2014-05-07 08:45:33   
                                阅读次数:
353
                             
                    
                        
                            
                            
                                题目分析:四柱汉诺塔。由于题目已经给出了求解方法,直接写代码即可。下面总结一下,四塔问题。
感谢这篇文章的作者,点这里就到,总结的很好。直接贴过来~
四塔问题:设有A,B,C,D四个柱子(有时称塔),在A柱上有由小到大堆放的n个盘子。
今将A柱上的盘子移动到D柱上去。可以利用B,C柱作为工作栈用,移动的规则如下:
①每次只能移动一个盘子。
②在移动的过程中,小盘子只能放到大盘子的上面...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 07:31:09   
                                阅读次数:
317
                             
                    
                        
                            
                            
                                ### 背景
银时跟我讲,想从 Netty3迁移到Netty4 。
问其原因是因为 Netty3在容器里会报错,错误堆栈:
java.io.IOException: 无法立即完成一个非阻止性套接字操作。
at sun.nio.ch.SocketDispatcher.close0(Native Method)
at sun.nio.ch.SocketDisp...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 06:30:21   
                                阅读次数:
425
                             
                    
                        
                            
                            
                                【原题】
1010: [HNOI2008]玩具装箱toy
Time Limit: 1 Sec  Memory Limit: 162 MB
Submit: 5434  Solved: 1969
[Submit][Status]
Description
P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京。他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 06:25:07   
                                阅读次数:
389
                             
                    
                        
                            
                            
                                今天看一帖子,赵忠大哥的回复挺经典也很有用,记录下来!
在每个最后不带\n的printf后面加fflush(stdout);
在每个不想受接收缓冲区旧内容影响的scanf前面加rewind(stdin);
另外请检查scanf的返回值。
在占用内存空间较大的局部数组声明的前面加static将其从堆栈数据段挪到全局数据段即可避开因局部数组大小超过默认堆栈大小1MB造成程序不能正常...
                            
                            
                                分类:
编程语言   时间:
2014-05-07 06:07:39   
                                阅读次数:
378
                             
                    
                        
                            
                            
                                题目:
在数轴上有n个区间,每个区间都是连续的整数区间。现在要在数轴上任取一堆元素,构成一个集合V,要求每个区间和V的交集至少有两个不同的元素。求V的最小的元素个数。
问题分析:
      
可以使用贪心算法,最终结果肯定是小于大于2×n的,如果两个集合之间有相同的元素,那么选相同的元素必然会使结果更小,当我们以e排序后,如果有相同的必然是最后的元素。所以贪心的策略就是如果一个区间最...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 04:04:23   
                                阅读次数:
294
                             
                    
                        
                            
                            
                                Cortex-M3有以下特点:
1、32位内核
2、哈佛结构
3、大小端模式
4、可选的MPU
5、Thumb可以访问R0-R7,Thumb-2可以访问所有寄存器。
6、R13有两个,MSP和PSP,堆栈指针的最后两位为0,堆栈是4字节对齐。
7、R14存储子程序的返回地址。多于一级的,就保存到堆栈中。
8、
异常
特权级
用户级
异常handler...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 03:21:37   
                                阅读次数:
214
                             
                    
                        
                            
                            
                                树
学习目标
理解什么是树及使用方法 学会使用树实现映射 用列表实现树 用类和引用实现树 用递归实现树 用堆实现优先队列
树的例子
前面我们学习过栈和队列这类线性数据结构,并且体验过递归,现在我们学习另一种通用数据结构,叫做树。树在计算机科学中应用广泛,象操作系统、图形学、数据库系统、网络等都要用到树。树和他们在自然界中的表哥——植物树——非常相似,树也有根,有分枝,有叶子...
                            
                            
                                分类:
编程语言   时间:
2014-05-06 23:24:22   
                                阅读次数:
447
                             
                    
                        
                            
                            
                                我们把对象堆起来放成为一个集合,方法有很多,比如放进数组
堆栈
列表中。当客户想要遍历这些对象时,你打算让他看到你的实现么?当然不要!一点专业范儿都没了。
所以今天我们谈的就是如何让客户遍历对象而又无法窥视你存储对象的方式——迭代器模式
 
概述
提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。
适用情况:当不需要访问一个聚集对象,而且不管这些对象是什么都...
                            
                            
                                分类:
其他好文   时间:
2014-05-06 23:01:37   
                                阅读次数:
362
                             
                    
                        
                            
                            
                                OpenGL通过相机模拟、可以实现计算机图形学中最基本的三维变换,即几何变换(模型变换—视图变换(两者合称几何变换))、投影变换、裁剪变换、视口变换等,同时,OpenGL还实现了矩阵堆栈等。理解掌握了有关坐标变换的内容,就算真正走进了精彩地三维世界。
坐标系统
世界坐标系:在现实世界中,所有的物体都具有三维特征,但计算机本身只能处理数字,显示二维的图形,将三维物体及二维数据联系在一起的唯一纽带...
                            
                            
                                分类:
其他好文   时间:
2014-05-06 22:44:53   
                                阅读次数:
886