﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-to myself 的分类学习日志-随笔分类-Algorithm and Data Structures</title><link>http://www.cppblog.com/toMyself/category/17084.html</link><description>做自己想做的事</description><language>zh-cn</language><lastBuildDate>Mon, 28 Mar 2016 12:58:26 GMT</lastBuildDate><pubDate>Mon, 28 Mar 2016 12:58:26 GMT</pubDate><ttl>60</ttl><item><title>算法时间复杂度的计算</title><link>http://www.cppblog.com/toMyself/archive/2011/07/15/151080.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 15 Jul 2011 11:25:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/15/151080.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/151080.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/15/151080.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/151080.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/151080.html</trackback:ping><description><![CDATA[<p><span style="font-family: 宋体">二分查找的基本思想是将</span>n<span style="font-family: 宋体">个元素分成大致相等的两部分，去</span>a[n/2]<span style="font-family: 宋体">与</span>x<span style="font-family: 宋体">做比较，如果</span>x=a[n/2],<span style="font-family: 宋体">则找到</span>x,<span style="font-family: 宋体">算法中止；如果</span>x&lt;a[n/2],<span style="font-family: 宋体">则只要在数组</span>a<span style="font-family: 宋体">的左半部分继续搜索</span>x,<span style="font-family: 宋体">如果</span>x&gt;a[n/2],<span style="font-family: 宋体">则只要在数组</span>a<span style="font-family: 宋体">的右半部搜索</span>x.</p>
<p><span style="font-family: 宋体">时间复杂度无非就是</span>while<span style="font-family: 宋体">循环的次数！</span></p>
<p><span style="font-family: 宋体">总共有</span>n<span style="font-family: 宋体">个元素，</span></p>
<p><span style="font-family: 宋体">渐渐跟下去就是</span>n,n/2,n/4,....n/2^k<span style="font-family: 宋体">，其中</span>k<span style="font-family: 宋体">就是循环的次数</span></p>
<p><span style="font-family: 宋体">由于你</span>n/2^k<span style="font-family: 宋体">取整后</span>&gt;=1</p>
<p><span style="font-family: 宋体">即令</span>n/2^k=1</p>
<p><span style="font-family: 宋体">可得</span>k=log2n,<span style="font-family: 宋体">（是以</span>2<span style="font-family: 宋体">为底，</span>n<span style="font-family: 宋体">的对数）</span>&nbsp;</p>
<p><span style="font-family: 宋体">所以时间复杂度可以表示</span>O()=O(logn)</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>T(n)= T(n/2)</p>
<p><span style="font-family: 宋体">可以推出最坏情况是</span> log(n)</p>
<p><span style="font-family: 宋体">求平均的话，最简单假设是平均分布。</span>1~~n<span style="font-family: 宋体">各出现一次。</span>&nbsp;&nbsp;</p>
<p><span style="font-family: 宋体">平均时间</span>O<span style="font-family: 宋体">（</span>t<span style="font-family: 宋体">）</span> = 1/n<span style="font-family: 宋体">（</span>1*log(n) +2*log(n/2)+4*log<span style="font-family: 宋体">（</span>n/4)<span style="font-family: 宋体">&#8230;&#8230;</span>+ 2^k *log(n/2^k-1) <span style="font-family: 宋体">其中</span> n = 2^k-1</p>
<p>o(t) = 1/n(log(n) + (2log(n) - 2) +(4log(n)-4)+&#8230;&#8230;)</p>
<p>o(t) = 1/n((1+2+4+&#8230;&#8230;2^k-1)log(n)-2-4-8-2^k)&nbsp;</p>
<p><span style="font-family: 宋体">约等于</span> log(n)-2</p>
<p><span style="font-family: 宋体">等于</span> o(log(n))</p>
<p style="text-align: left; margin: 12pt 0cm 3pt" align="left">&nbsp;</p>
<p style="text-align: left; margin: 12pt 0cm 3pt" class="MsoTitle" align="left"><span style="font-family: 宋体; mso-hansi-font-family: Cambria; mso-ascii-font-family: Cambria; mso-ascii-theme-font: major-latin; mso-hansi-theme-font: major-latin"><strong><font size="5">常用对数与自然对数</font></strong></span></p>
<p>
<p style="margin: 0cm 0cm 0pt" class="MsoNormal"><span lang="EN-US"><o:p><font face="Calibri"></font></o:p></span></p><span lang="EN-US"><o:p><font face="Calibri">&nbsp;参考：<a href="http://www.math15.com/gaozhong/10_126.html">http://www.math15.com/gaozhong/10_126.html</a></font></o:p></span></p>
<p style="margin: 0cm 0cm 0pt" class="MsoNormal"><span style="font-family: 宋体; mso-hansi-font-family: Calibri; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin">推论：</span></p>
<p style="margin: 0cm 0cm 0pt" class="MsoNormal"><span lang="EN-US"><font face="Calibri">log2N = logeN/loge2 = 1/loge2 * lnN = k * lnN.</font></span></p>
<p style="text-align: left; margin: 12pt 0cm 3pt" align="left"><br /><br /><br /><br />&nbsp;</p>
<p><br /><br /><br /><br /><br /><br /><br /></p><img src ="http://www.cppblog.com/toMyself/aggbug/151080.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-15 19:25 <a href="http://www.cppblog.com/toMyself/archive/2011/07/15/151080.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>几种常用数据结构的总结</title><link>http://www.cppblog.com/toMyself/archive/2011/07/15/151079.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 15 Jul 2011 11:21:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/15/151079.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/151079.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/15/151079.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/151079.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/151079.html</trackback:ping><description><![CDATA[<p><strong>树 <strong>Tree </strong></strong></p><strong>
<ol><li>二叉查找树 Binary search tree<br />参考：&nbsp;<a href="http://blog.csdn.net/speedme/article/details/18272791" title="《Thinking In Algorithm》06.Binary search tree（二叉查找树）">《Thinking In Algorithm》06.Binary search tree（二叉查找树）</a></li><li>B 树 B Tree<br />参考：<a title="《Thinking In Algorithm》08.B-Tree" href="http://blog.csdn.net/SpeedMe/article/details/18963971">《Thinking In Algorithm》08.B-Tree</a></li><li>红黑树 Red Black Tree<br />参考：<a title="《Thinking In Algorithm》07.Red-Black Trees（红黑树）" href="http://www.cnblogs.com/longdouhzt/archive/2011/07/20/2112086.html">《Thinking In Algorithm》07.Red-Black Trees（红黑树）</a></li></ol>
<p><br />&nbsp;<div style="display: inline-block;"></div></p><div style="font-family: Arial; font-weight: normal; line-height: 26px; background-color: #ffffff;"><span style="font-family: 'Microsoft YaHei';"><span style="font-size: 12px;">红黑树是二叉查找树的一种，满足二叉查找树的性质</span></span><strong style="font-family: verdana, 'courier new'; line-height: 21px;"><div style="font-family: Arial; font-weight: normal; line-height: 26px; display: inline !important;"><div style="display: inline !important;"><span style="font-family: 'Microsoft YaHei';"><span style="font-size: 12px;">：</span></span></div></div></strong><div><ul style="line-height: 25.9896px;"><li><span style="font-family: Verdana;"><span style="font-size: 12px;">The left subtree of a node contains only nodes with keys less than the node's key.</span></span></li><li><span style="font-family: Verdana;"><span style="font-size: 12px;">The right subtree of a node contains only nodes with keys greater than the node's key.</span></span></li><li><span style="font-family: Verdana;"><span style="font-size: 12px;">The left and right subtree each must also be a binary search tree.</span></span></li><li><span style="font-family: Verdana;"><span style="font-size: 12px;">There must be&nbsp;<strong>no duplicate</strong>&nbsp;nodes.<br /><br /><br /></span></span></li></ul></div></div><p>&nbsp;</p></strong><img src ="http://www.cppblog.com/toMyself/aggbug/151079.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-15 19:21 <a href="http://www.cppblog.com/toMyself/archive/2011/07/15/151079.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>几种常用的查找算法的总结</title><link>http://www.cppblog.com/toMyself/archive/2011/07/15/151075.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 15 Jul 2011 10:32:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/15/151075.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/151075.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/15/151075.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/151075.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/151075.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 查找 Search 顺序查找 Sequential search 二分查找 Binary search 块查找 Blocking search 哈希查找 Hash search 二叉树查找 Binary search tree search &nbsp;1，Binary search：适用于已经排好序的数据进行查找。时间复杂度O(logN)。Implementation：&nbsp;...&nbsp;&nbsp;<a href='http://www.cppblog.com/toMyself/archive/2011/07/15/151075.html'>阅读全文</a><img src ="http://www.cppblog.com/toMyself/aggbug/151075.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-15 18:32 <a href="http://www.cppblog.com/toMyself/archive/2011/07/15/151075.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>几种常用的排序算法的总结</title><link>http://www.cppblog.com/toMyself/archive/2011/07/06/150329.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Wed, 06 Jul 2011 12:14:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/06/150329.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/150329.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/06/150329.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/150329.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/150329.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 几种常用的排序算法？ 八种？ 十种？/Files/toMyself/最常用的排序算法总结.doc参考：http://en.wikipedia.org/wiki/Sorting_algorithm&nbsp;排序，从小大，0坐标的在下面，即排序后小的在下面，大的在上面。1，冒泡Bubble：从第0个开始，一直往上，与相邻的元素比较，如果下面的大，则交换。Analysis：Implementation...&nbsp;&nbsp;<a href='http://www.cppblog.com/toMyself/archive/2011/07/06/150329.html'>阅读全文</a><img src ="http://www.cppblog.com/toMyself/aggbug/150329.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-06 20:14 <a href="http://www.cppblog.com/toMyself/archive/2011/07/06/150329.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用的排序算法的时间复杂度和空间复杂度</title><link>http://www.cppblog.com/toMyself/archive/2011/07/05/150163.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Mon, 04 Jul 2011 16:54:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/05/150163.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/150163.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/05/150163.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/150163.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/150163.html</trackback:ping><description><![CDATA[<p>常用的排序算法的时间复杂度和空间复杂度</p>
<p>原文：<a title="http://www.cnitblog.com/houcy/archive/2009/07/24/60349.html" href="http://www.cnitblog.com/houcy/archive/2009/07/24/60349.html">http://www.cnitblog.com/houcy/archive/2009/07/24/60349.html</a></p>
<p><a href="http://www.cppblog.com/images/cppblog_com/toMyself/WindowsLiveWriter/9a08bd37e559_CF7/sort_2.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="sort" border="0" alt="sort" src="http://www.cppblog.com/images/cppblog_com/toMyself/WindowsLiveWriter/9a08bd37e559_CF7/sort_thumb.jpg" width="815" height="419" /></a> </p>
<p>&nbsp;</p>
<p><a href="http://www.cppblog.com/images/cppblog_com/toMyself/WindowsLiveWriter/9a08bd37e559_CF7/sort2_2.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="sort2" border="0" alt="sort2" src="http://www.cppblog.com/images/cppblog_com/toMyself/WindowsLiveWriter/9a08bd37e559_CF7/sort2_thumb.jpg" width="815" height="309" /></a><br /><br /><br /><br />考点：各排序算法时间复杂度比较<br />出现频率：&#9733;&#9733;&#9733;<br />写出下列算法的时间复杂度。<br />（1）冒泡排序；<br />（2）选择排序；<br />（3）插入排序；<br />（4）快速排序；<br />（5）堆排序；<br />（6）归并排序；<br />答案：<br />冒泡排序算法时间复杂度是O(n^2)。<br />选择排序算法复杂度是O(n^2)。<br />插入排序算法时间复杂度是O(n^2)<br />快速排序快速排序是不稳定的。最理想情况算法时间复杂度O(nlog2n)，最坏O(n^2)。<br />堆排序算法时间复杂度O(nlogn)。<br />归并排序的时间复杂度是O(nlog2n)。<br /><br /><br />参考：<br />1， <a href="http://en.wikipedia.org/wiki/Sorting_algorithm">http://en.wikipedia.org/wiki/Sorting_algorithm</a><br /><br /><br /><br /><br /></p><img src ="http://www.cppblog.com/toMyself/aggbug/150163.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-05 00:54 <a href="http://www.cppblog.com/toMyself/archive/2011/07/05/150163.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>信息学奥林匹克竞赛&amp;国际大学生程序设计竞赛</title><link>http://www.cppblog.com/toMyself/archive/2011/07/04/150098.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Mon, 04 Jul 2011 03:30:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/04/150098.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/150098.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/04/150098.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/150098.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/150098.html</trackback:ping><description><![CDATA[<p>信息学奥林匹克竞赛:国际国内分类试题精解</p>
<p>参考：<br />1，<a href="http://baike.baidu.com/view/1652123.htm">http://baike.baidu.com/view/1652123.htm</a><br />2，<a href="http://baike.baidu.com/view/553911.htm">http://baike.baidu.com/view/553911.htm</a></p>
<p><br />NOIP常用的书目有《奥赛经典》的基础篇、提高篇、数据结构篇等。最好买详细介绍数据结构和算法的书，这样的书也很多，清华大学出版社的不错。<br />另外，信息学训练常用的网站：<br /><a href="http://www.vijos.cn">http://www.vijos.cn</a><br /><a href="http://www.oibh.org">http://www.oibh.org</a> （有所有网站的比赛消息发布等）<br /><a href="http://train.usaco.org">http://train.usaco.org</a><br />（最后一个是英文的，可以去<a href="http://www.nocow.cn/index.php/USACO_Training">http://www.nocow.cn/index.php/USACO_Training</a>看着翻译做。）<br />其他的也非常多。<br />信息学竞赛也需要大量的做题量。另外要多找老师咨询，弄清楚有关比赛的基本知识。我初中参加普及组比赛时完全不会文件操作，结果0分&#8230;&#8230;<br />也应该看一下NOIP近年发布的大纲以了解相关信息。</p>
<p>&nbsp;</p>
<p><br /></p>
<div><span style="line-height: 25px; font-family: arial, 宋体, sans-serif">ACM/ICPC(ACM International Collegiate Programming Contest,&nbsp;<a style="color: #136ec2; text-decoration: underline" href="http://baike.baidu.com/view/2128717.htm" target="_blank">国际大学生程序设计竞赛</a>)是由国际计算机界历史悠久、颇具权威性的组织ACM（Association for Computing Machinery，国际计算机协会）主办的，世界上公认的规模最大、水平最高的国际大学生程序设计竞赛。<br /><br />参考：<br />1，<a href="http://baike.baidu.com/view/94274.htm">http://baike.baidu.com/view/94274.htm</a><br />2，<a href="http://baike.baidu.com/view/2128717.htm">http://baike.baidu.com/view/2128717.htm</a><br /><br /><br /><br /><br /><br /><br /><br /></span></div>&nbsp;
<p>&nbsp;</p><img src ="http://www.cppblog.com/toMyself/aggbug/150098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-04 11:30 <a href="http://www.cppblog.com/toMyself/archive/2011/07/04/150098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>算法和数据结构参考书</title><link>http://www.cppblog.com/toMyself/archive/2011/07/04/150097.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Mon, 04 Jul 2011 03:29:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/04/150097.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/150097.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/04/150097.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/150097.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/150097.html</trackback:ping><description><![CDATA[《算法导论》<br /><br />《Cpp数据结构原理与经典问题求解》<br /><br />《编程之美：微软技术面试心得》<br /><br />《数据结构(C语言版)》 严蔚敏 吴伟民 编著<br /><br />《Data Structures and Algorithms in C++》 Second Edition 2001 Adam.Drozdek<br /><img src ="http://www.cppblog.com/toMyself/aggbug/150097.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-04 11:29 <a href="http://www.cppblog.com/toMyself/archive/2011/07/04/150097.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实现单链表</title><link>http://www.cppblog.com/toMyself/archive/2011/07/01/149934.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 01 Jul 2011 10:49:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/01/149934.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/149934.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/01/149934.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/149934.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/149934.html</trackback:ping><description><![CDATA[<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">memory</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_39_68_Open_Image" onclick="this.style.display='none'; Codehighlighter1_39_68_Open_Text.style.display='none'; Codehighlighter1_39_68_Closed_Image.style.display='inline'; Codehighlighter1_39_68_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_39_68_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_39_68_Closed_Text.style.display='none'; Codehighlighter1_39_68_Open_Image.style.display='inline'; Codehighlighter1_39_68_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_39_68_Closed_Text">/**/</span><span id="Codehighlighter1_39_68_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">*<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;*&nbsp;Single&nbsp;linked&nbsp;list.<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000">&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />template</span><span style="color: #000000">&lt;</span><span style="color: #000000">typename&nbsp;_Ty</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;List<br /><img id="Codehighlighter1_106_868_Open_Image" onclick="this.style.display='none'; Codehighlighter1_106_868_Open_Text.style.display='none'; Codehighlighter1_106_868_Closed_Image.style.display='inline'; Codehighlighter1_106_868_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_106_868_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_106_868_Closed_Text.style.display='none'; Codehighlighter1_106_868_Open_Image.style.display='inline'; Codehighlighter1_106_868_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_106_868_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_106_868_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">:<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List()&nbsp;:&nbsp;mNext(NULL),&nbsp;mEnd(</span><span style="color: #0000ff">this</span><span style="color: #000000">)<br /><img id="Codehighlighter1_151_154_Open_Image" onclick="this.style.display='none'; Codehighlighter1_151_154_Open_Text.style.display='none'; Codehighlighter1_151_154_Closed_Image.style.display='inline'; Codehighlighter1_151_154_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_151_154_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_151_154_Closed_Text.style.display='none'; Codehighlighter1_151_154_Open_Image.style.display='inline'; Codehighlighter1_151_154_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_151_154_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_151_154_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List(</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;_Ty</span><span style="color: #000000">&amp;</span><span style="color: #000000">&nbsp;_Val)&nbsp;:&nbsp;mVal(_Val),&nbsp;mNext(NULL)<br /><img id="Codehighlighter1_207_225_Open_Image" onclick="this.style.display='none'; Codehighlighter1_207_225_Open_Text.style.display='none'; Codehighlighter1_207_225_Closed_Image.style.display='inline'; Codehighlighter1_207_225_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_207_225_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_207_225_Closed_Text.style.display='none'; Codehighlighter1_207_225_Open_Image.style.display='inline'; Codehighlighter1_207_225_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_207_225_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_207_225_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mEnd&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">~</span><span style="color: #000000">List()<br /><img id="Codehighlighter1_239_359_Open_Image" onclick="this.style.display='none'; Codehighlighter1_239_359_Open_Text.style.display='none'; Codehighlighter1_239_359_Closed_Image.style.display='inline'; Codehighlighter1_239_359_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_239_359_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_239_359_Closed_Text.style.display='none'; Codehighlighter1_239_359_Open_Image.style.display='inline'; Codehighlighter1_239_359_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_239_359_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_239_359_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">Destory&nbsp;List:</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;mVal&nbsp;</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">&nbsp;std::endl;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(mNext&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;NULL)<br /><img id="Codehighlighter1_318_356_Open_Image" onclick="this.style.display='none'; Codehighlighter1_318_356_Open_Text.style.display='none'; Codehighlighter1_318_356_Closed_Image.style.display='inline'; Codehighlighter1_318_356_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_318_356_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_318_356_Closed_Text.style.display='none'; Codehighlighter1_318_356_Open_Image.style.display='inline'; Codehighlighter1_318_356_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_318_356_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_318_356_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&nbsp;mNext;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mNext&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;NULL;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">:<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;Next()&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000"><br /><img id="Codehighlighter1_396_415_Open_Image" onclick="this.style.display='none'; Codehighlighter1_396_415_Open_Text.style.display='none'; Codehighlighter1_396_415_Closed_Image.style.display='inline'; Codehighlighter1_396_415_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_396_415_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_396_415_Closed_Text.style.display='none'; Codehighlighter1_396_415_Open_Image.style.display='inline'; Codehighlighter1_396_415_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_396_415_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_396_415_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;mNext;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;Begin()&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000"><br /><img id="Codehighlighter1_445_463_Open_Image" onclick="this.style.display='none'; Codehighlighter1_445_463_Open_Text.style.display='none'; Codehighlighter1_445_463_Closed_Image.style.display='inline'; Codehighlighter1_445_463_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_445_463_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_445_463_Closed_Text.style.display='none'; Codehighlighter1_445_463_Open_Image.style.display='inline'; Codehighlighter1_445_463_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_445_463_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_445_463_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;End()&nbsp;</span><span style="color: #0000ff">const</span><span style="color: #000000"><br /><img id="Codehighlighter1_491_509_Open_Image" onclick="this.style.display='none'; Codehighlighter1_491_509_Open_Text.style.display='none'; Codehighlighter1_491_509_Closed_Image.style.display='inline'; Codehighlighter1_491_509_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_491_509_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_491_509_Closed_Text.style.display='none'; Codehighlighter1_491_509_Open_Image.style.display='inline'; Codehighlighter1_491_509_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_491_509_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_491_509_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;mEnd;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;Insert(List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;pNext)<br /><img id="Codehighlighter1_550_630_Open_Image" onclick="this.style.display='none'; Codehighlighter1_550_630_Open_Text.style.display='none'; Codehighlighter1_550_630_Closed_Image.style.display='inline'; Codehighlighter1_550_630_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_550_630_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_550_630_Closed_Text.style.display='none'; Codehighlighter1_550_630_Open_Image.style.display='inline'; Codehighlighter1_550_630_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_550_630_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_550_630_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">-&gt;</span><span style="color: #000000">mEnd</span><span style="color: #000000">-&gt;</span><span style="color: #000000">_SetNext(pNext);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">-&gt;</span><span style="color: #000000">mEnd&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;pNext</span><span style="color: #000000">-&gt;</span><span style="color: #000000">End();<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;pNext;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;Insert(</span><span style="color: #0000ff">const</span><span style="color: #000000">&nbsp;_Ty</span><span style="color: #000000">&amp;</span><span style="color: #000000">&nbsp;_Val)<br /><img id="Codehighlighter1_670_742_Open_Image" onclick="this.style.display='none'; Codehighlighter1_670_742_Open_Text.style.display='none'; Codehighlighter1_670_742_Closed_Image.style.display='inline'; Codehighlighter1_670_742_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_670_742_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_670_742_Closed_Text.style.display='none'; Codehighlighter1_670_742_Open_Image.style.display='inline'; Codehighlighter1_670_742_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_670_742_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_670_742_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;pNext&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;</span><span style="color: #000000">(_Val);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;Insert(pNext);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">private</span><span style="color: #000000">:<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;_SetNext(List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;pNext)<br /><img id="Codehighlighter1_788_808_Open_Image" onclick="this.style.display='none'; Codehighlighter1_788_808_Open_Text.style.display='none'; Codehighlighter1_788_808_Closed_Image.style.display='inline'; Codehighlighter1_788_808_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_788_808_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_788_808_Closed_Text.style.display='none'; Codehighlighter1_788_808_Open_Image.style.display='inline'; Codehighlighter1_788_808_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_788_808_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_788_808_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mNext&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;pNext;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #0000ff">private</span><span style="color: #000000">:<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;_Ty&nbsp;mVal;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;mNext;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #000000">_Ty</span><span style="color: #000000">&gt;*</span><span style="color: #000000">&nbsp;mEnd;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main(</span><span style="color: #0000ff">void</span><span style="color: #000000">)<br /><img id="Codehighlighter1_889_1038_Open_Image" onclick="this.style.display='none'; Codehighlighter1_889_1038_Open_Text.style.display='none'; Codehighlighter1_889_1038_Closed_Image.style.display='inline'; Codehighlighter1_889_1038_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_889_1038_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_889_1038_Closed_Text.style.display='none'; Codehighlighter1_889_1038_Open_Image.style.display='inline'; Codehighlighter1_889_1038_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_889_1038_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_889_1038_Open_Text"><span style="color: #000000">{<br /><img id="Codehighlighter1_892_1006_Open_Image" onclick="this.style.display='none'; Codehighlighter1_892_1006_Open_Text.style.display='none'; Codehighlighter1_892_1006_Closed_Image.style.display='inline'; Codehighlighter1_892_1006_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_892_1006_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_892_1006_Closed_Text.style.display='none'; Codehighlighter1_892_1006_Open_Image.style.display='inline'; Codehighlighter1_892_1006_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_892_1006_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_892_1006_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::auto_ptr</span><span style="color: #000000">&lt;</span><span style="color: #000000">List</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;ptrList(</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;List</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">(</span><span style="color: #000000">1</span><span style="color: #000000">));<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ptrList.</span><span style="color: #0000ff">get</span><span style="color: #000000">()</span><span style="color: #000000">-&gt;</span><span style="color: #000000">Insert(</span><span style="color: #000000">2</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ptrList.</span><span style="color: #0000ff">get</span><span style="color: #000000">()</span><span style="color: #000000">-&gt;</span><span style="color: #000000">Insert(</span><span style="color: #000000">3</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;system(</span><span style="color: #000000">"</span><span style="color: #000000">pause</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span></div><img src ="http://www.cppblog.com/toMyself/aggbug/149934.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-01 18:49 <a href="http://www.cppblog.com/toMyself/archive/2011/07/01/149934.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>电话号码对应英语单词</title><link>http://www.cppblog.com/toMyself/archive/2011/07/01/149907.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 01 Jul 2011 07:06:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/07/01/149907.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/149907.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/07/01/149907.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/149907.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/149907.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 摘自《编程之美：微软技术面试心得》上的&#8220;电话号码对应英语单词&#8221;问题电话的号码盘一般可以用于输入字母，如用2可以输入A、B、C，用3可以输入D、E、F等。如对于号码5869872，可以一次输出其代表的所有字母组合，如：JTMWTPA、JTMWTPB&#8230;&#8230;1、您是否可以根据这样的对应关系设计一个程序，尽可能的从这些字母组合中找到一个有意义的单词 来表达一个...&nbsp;&nbsp;<a href='http://www.cppblog.com/toMyself/archive/2011/07/01/149907.html'>阅读全文</a><img src ="http://www.cppblog.com/toMyself/aggbug/149907.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-07-01 15:06 <a href="http://www.cppblog.com/toMyself/archive/2011/07/01/149907.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>时间复杂度</title><link>http://www.cppblog.com/toMyself/archive/2011/06/17/148854.html</link><dc:creator>kongkongzi</dc:creator><author>kongkongzi</author><pubDate>Fri, 17 Jun 2011 05:59:00 GMT</pubDate><guid>http://www.cppblog.com/toMyself/archive/2011/06/17/148854.html</guid><wfw:comment>http://www.cppblog.com/toMyself/comments/148854.html</wfw:comment><comments>http://www.cppblog.com/toMyself/archive/2011/06/17/148854.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/toMyself/comments/commentRss/148854.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/toMyself/services/trackbacks/148854.html</trackback:ping><description><![CDATA[<h3 align="left">一个经验规则</h3>
<p align="left">有如下复杂度关系</p>
<p align="left">c &lt; log2N &lt; n &lt; n * Log2N &lt; n^2 &lt; n^3 &lt; 2^n &lt; 3^n &lt; n!</p>
<p align="left">其中c是一个常量，如果一个算法的复杂度为c 、 log2N 、n 、 n*log2N ,那么这个算法时间效率比较高 ，如果是 2^n , 3^n ,n!，那么稍微大一些的n就会令这个算法不能动了，居于中间的几个则差强人意。</p><img src ="http://www.cppblog.com/toMyself/aggbug/148854.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/toMyself/" target="_blank">kongkongzi</a> 2011-06-17 13:59 <a href="http://www.cppblog.com/toMyself/archive/2011/06/17/148854.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>