随笔分类 -  剑指offer

读剑指offer,写代码
摘要:这是一个很经典的问题,我之所以要写这个题,是因为我同学面试360时面试过一道题,当时面试官对他说,你们写代码的时候要考虑多线程访问时应该怎么办,所以我就尝试如果是线程访问的情况下两个堆栈实现一个队列应该怎么做? 阅读全文

posted @ 2013-05-29 00:29 菜包子 阅读(597) 评论(0) 推荐(0)

摘要:剑指offer第六题,可以打印树。 阅读全文

posted @ 2013-04-19 17:37 菜包子 阅读(269) 评论(0) 推荐(0)

摘要:本文主要分为两个部分,一个是对于算法的理解另一个是在算法实现过程中一些经验和教训的总结。 阅读全文

posted @ 2013-04-15 16:22 菜包子 阅读(844) 评论(0) 推荐(0)

摘要:前言:写随笔主要是加深自己对C#的理解,如果有错误的地方请指正,感激不尽。剑指offer的面试题5:要求可以逆向实现打印链表,原文中给出的C++代码,我自己用C#代码实现。自己写代码总要比读代码认识到的东西要多一些,在实现的过程中主要遇到的知识点有 1,如何使自己的链表具有实现foreach功能? 2,实现中选择继承IList接口,里面有一个copyTo函数,学到了使用ICLone接口? 3,实现Contains函数时需要比较,于是查了C#中==,equal,Reference的相同处和不同出? 4,最后要测试,学习了白盒测试的几种覆盖。 5, 关于比较接口的不同。首先请看代码。... 阅读全文

posted @ 2013-04-10 17:07 菜包子 阅读(431) 评论(0) 推荐(0)

摘要:替换字符串代码 public interface IStringReplace { void CharsReplace(ref char[] value, char[] oldchars, char[] newChars); } public class StringReplace : IStringReplace { private static StringReplace instance; public static StringReplace CreateInstance() { ... 阅读全文

posted @ 2013-04-02 21:51 菜包子 阅读(284) 评论(0) 推荐(0)

摘要:问题3.真的可以这样实现从后向前移动的算法吗?为什么? 从后向前替换的时候,因为替换后的数组实际长度大于原来的数组实际长度,所以要考虑到数组溢出的问题,首先需要找出字符串valueChars中包含几个oldChars,计算出替换后的字符串实际长度是否存在溢出,如果存在则返回,否则开始从后面开始替换。 问题就来了,从最后开始替换的时候,首先从最后一个字符开始比较,然后看是否相同,如果全部相同则代表这个词可以替换了。那么这样就和最先匹配原则出现的矛盾,例如'....aaaccc',oldChars='cc'时,newChars='ddd'时采用这种替 阅读全文

posted @ 2013-03-25 23:04 菜包子 阅读(331) 评论(0) 推荐(0)

摘要:关于剑指offer面试题4的一些想法 阅读全文

posted @ 2013-03-24 00:38 菜包子 阅读(366) 评论(0) 推荐(0)

摘要:剑指offer的面试题3:二维数组中的查找,.Net的实现,和相关测试 阅读全文

posted @ 2013-03-21 22:27 菜包子 阅读(477) 评论(5) 推荐(0)

导航