一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

一亩三分地官方iOS手机应用下载
查看: 1809|回复: 8
收起左侧

2014-04-14 LinkedIn 第二次电面

[复制链接] |试试Instant~ |关注本帖
johnnywsd 发表于 2014-4-15 08:42:52 | 显示全部楼层 |阅读模式

2014(1-3月) 码农类 硕士 全职@Linkedin - 网上海投 - 技术电面 |Other

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
Implement a (Java) Iterable object that iterates lines one by one from a text file.

** A reference to a file. */
public class TextFile implements Iterable<String>.鏈枃鍘熷垱鑷1point3acres璁哄潧
{
  public TextFile(String fileName) { // please implement this

  /** Begin reading the file, line by line. The returned Iterator.next() will return a line. */. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  @Override
  public Iterator<String> iterator() { // please implement this


Print binary tree by level
/**
* Sample input:
*
*          1
*         / \
*        3   5 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
*       / \   \.鏈枃鍘熷垱鑷1point3acres璁哄潧
*      2   4   7
*     /     \
*    9       8.1point3acres缃
*
* Expected output:
*    1
*    3 5
*    2 4 7
*    9 8
*    ==========
*/. 鍥磋鎴戜滑@1point 3 acres

发题攒人品,求过。


评分

1

查看全部评分

 楼主| johnnywsd 发表于 2014-4-15 08:59:20 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
楼主亲自作答。.1point3acres缃
楼主是Python流的。第一题用Python基本没法达到它的要求。.鐣欏璁哄潧-涓浜-涓夊垎鍦

第二题。
  1. """
  2. /**
    . From 1point 3acres bbs
  3. * Sample input:
  4. *
  5. *          1
  6. *         / \
  7. *        3   5
  8. *       / \   \
  9. *      2   4   7
  10. *     /     \
  11. *    9       8
  12. *
  13. * Expected output:
  14. *    1
  15. *    3 5
  16. *    2 4 7
  17. *    9 8
  18. *    ==========
  19. */.鐣欏璁哄潧-涓浜-涓夊垎鍦
  20. """
  21. class TreeNode(object):

  22.     def __init__(self, val):
  23.         self.val = val
  24.         self.left = None
  25.         self.right = None


  26. def print_by_level(root):
  27.     if not root:
  28.         print ''.鐣欏璁哄潧-涓浜-涓夊垎鍦

  29.     curr = []
  30.     prev = [root]
  31.     while prev:
  32.         curr = []
  33.         str_list = [str(x.val) for x in prev]
  34.         print ' '.join(str_list)
  35.         for item in prev:
  36.             if item.left:
  37.                 curr.append(item.left)
  38.             if item.right:
  39.                 curr.append(item.right)
  40.         prev = curr. 1point 3acres 璁哄潧
复制代码
回复 支持 反对

使用道具 举报

lazyGoose 发表于 2014-4-15 10:06:34 | 显示全部楼层
关注一亩三分地微博:
Warald
我加个那个Iterator的~

public class TextFile implements Iterable<String> {
        ArrayList<String> lines = new ArrayList<String>();
        public TextFile(String fileName) { // please implement this. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
                Scanner sc = null;
                try {
                        sc = new Scanner(new File("file.txt"));
                } catch (FileNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }. visit 1point3acres.com for more.
                while (sc.hasNext()) {
                        lines.add(sc.nextLine());
                }
        }.鏈枃鍘熷垱鑷1point3acres璁哄潧

        /**
         * Begin reading the file, line by line. The returned Iterator.next() will.鏈枃鍘熷垱鑷1point3acres璁哄潧
         * return a line.
         */
        @Override
        public Iterator<String> iterator() { // please implement this
                return lines.iterator();
        }

        public static void main(String[] args) {
                TextFile text = new TextFile("file.txt");
                Iterator<String> itr = text.iterator();
                while (itr.hasNext()) {
                        System.err.println(itr.next());
                }
               
        }
}
回复 支持 反对

使用道具 举报

 楼主| johnnywsd 发表于 2014-4-15 11:39:54 | 显示全部楼层

Follow up 问题。如果文件过于大,不能一次load到内存中怎么办?
提示:先读1000行,要读1001行时,在读1000行。
回复 支持 反对

使用道具 举报

lhn9021 发表于 2014-4-15 12:01:22 | 显示全部楼层
第一题我觉得是不是bufferedreader就行了
求职神器indeed - 在全球最大的求职网站找找适合你的工作?
回复 支持 反对

使用道具 举报

lazyGoose 发表于 2014-4-16 00:17:14 | 显示全部楼层
johnnywsd 发表于 2014-4-15 11:39
Follow up 问题。如果文件过于大,不能一次load到内存中怎么办?
提示:先读1000行,要读1001行时,在读 ...

是啊,如果这样的话该怎么办??

一个size是1000的ArrayList返回一个Iterator. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
两个size都是1000的ArrayLists怎么才能只返回一个Iterator呢?
回复 支持 反对

使用道具 举报

 楼主| johnnywsd 发表于 2014-11-25 05:16:15 | 显示全部楼层
lz就是个jb
回复 支持 反对

使用道具 举报

gosteve 发表于 2015-1-4 02:37:55 | 显示全部楼层
. From 1point 3acres bbs
lz你这自我评价 我有点难以理解啊 ...

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

xiaoying10101 发表于 2015-1-6 12:44:26 | 显示全部楼层
用python的第一题怎么办 直接放弃吗?
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2017-3-30 09:59

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表