微软面试题:输出文件中符合条件的当前行,前两行和后两行

考官说了一下题目: 输出文件中匹配条件的本行,本行的前两行和后两行。 听完题目觉得很简单。但做出来以后,考官来检查的时候发现很多问题。 举个例子,

    有连续两行时候的输出。比如3和4符合条件,那么要输出1 2 3 4 5 和2 3 4 5 6。 要考虑临界条件,比如文件中只有两行的情况。 不能整个文件读入,即可以使用5个单位左右的内存,代码要尽可能复用。

解题关键仅供参考: 1.递归判断,由于第三行满足条件后,要把第五行读完才能输出,所以采用了5个列表,分别含有5,4,3,2,1个元素,要求维护最新数据,节约内存空间。队列最后元素为刚刚读出的数据行。 2.注意处理仅有0,1,2,3,4行的文件的情况。

<无> .CodeEntity .code_pieces ul.piece_anchor{width:25px;position:absolute;top:25px;left:-30px;z-index:1000;}.CodeEntity .code_pieces ul.piece_anchor li{width:25px;background: #efe;margin-bottom:2px;}.CodeEntity .code_pieces ul.piece_anchor li{border-left:3px #40AA63 solid;border-right:3px #efe solid;}.CodeEntity .code_pieces ul.piece_anchor li:hover{border-right:3px #40AA63 solid;border-left:3px #efe solid;}.CodeEntity .code_pieces ul.piece_anchor li a{color: #333;padding: 3px 10px;}.CodeEntity .code_pieces .jump_to_code{visibility:hidden;position:relative;}.CodeEntity .code_pieces .code_piece:hover .jump_to_code{visibility:visible;}.CodeEntity .code_pieces .code_piece:hover .jump_to_code a{text-decoration:none;}.CodeEntity .code_pieces h2 i{float:right;font-style:normal;font-weight:normal;}.CodeEntity .code_pieces h2 i a{font-size:9pt;background: #FFFFFF;color:#00A;padding: 2px 5px;text-decoration:none;}

微软面试题:输出文件中符合条件的当前行,前两行和后两行

相关文章:

你感兴趣的文章:

标签云: