UVa和POJ都有这道题。
不同的是UVa要求区分单复数,而POJ不要求。
使用STL做会比较简单,这里纯粹使用指针做了,非常麻烦的指针操作,一不小心就错。调试起来还是非常费力的
本题理解起来也是挺费力的,要搞清楚如何模拟也不容易啊,读题要很仔细。
纯指针的操作挺快的吧。不过POJ 0ms,而UVa就0.2左右了。
三相链表:
1 只要有叠起来的牌,那么就使用一个down指针指向下面的...
分类:
其他好文 时间:
2014-07-06 10:43:43
阅读次数:
283
最短路径的O(ElgV)的解法。
使用邻接表存储图,使用堆操作选取下一个最小路径点。
本题的难度并不在最短路径本身这个算法,而是在于堆的操作:
1 使用双重指针操作堆的节点,可以省去直接复制操作堆节点,提高效率,并且这才是有效操作动态地址数据的方法,不用双重指针,我思考了下,觉得更加不好做。
2 使用一个数组记录当前顶点在堆中的位置,相当于一个hash表了,可以需要的时候,直接从表中查找表...
分类:
其他好文 时间:
2014-06-07 02:03:17
阅读次数:
214
作者:刘昊昱
博客:http://blog.csdn.net/liuhaoyutz
Android版本:4.4.2
在C++语言中,指针操作是最容易问题的地方,常见的指针操作错误有以下几种:
1、 定义一个指针,但没有对其进行初始化。这种情况下,指针会指向一个随机地址,此时使用该指针,将出现不可预知的错误。一般定义一个指针时,应该同时对该指针进行初始化。
2、 ...
分类:
移动开发 时间:
2014-06-05 07:50:51
阅读次数:
461
auto_ptr是C++标准库中()为了解决资源泄漏的问题提供的一个智能指针类模板(注意:这只是一种简单的智能指针)auto_ptr的实现原理其实就是RAII,在构造的时候获取资源,在析构的时候释放资源,并进行相关指针操作的重载,使用起来就像普通的指针。std::auto_ptr
pa(new Cl...
分类:
其他好文 时间:
2014-06-02 17:12:02
阅读次数:
210
Splay Tree的插入操作,搜索操作,和删除操作都实现了,那么就可以使用来解题了。
指针的删除操作的处理还是那么难的,很多坎需要避开.
同一个坎还是坑了我好多次,就是指针传递的问题,什么时候需要修改指针本身的值,就必须返回指针或者传递指针的指针,或者传递指针的的实参。
这里的删除操作就是需要改变传递到函数的指针本身的,所以我这里使用了返回指针操作。
还有删除树的问题,之前的代码没做删除...
分类:
其他好文 时间:
2014-06-01 10:30:52
阅读次数:
339