推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
vimiix
V2EX  ›  Python

只允许使用 10M 的内存,将一个 10G 的文件中的所有元素排序,请大佬说说有什么好的算法

  •  
  •   vimiix ·
    vimiix · Apr 24, 2018 · 7405 views
    This topic created in 3127 days ago, the information mentioned may be changed or developed.
    文件中的数据是"1,2,3,4,5,6...." 这样逗号形式分割存放的数字。
    27 replies  •  2018-07-12 11:32:08 +08:00
    y835L9DyC5XD09kq
    y835L9DyC5XD09kq
    Apr 24, 2018❤️3
    1
    请自行完成课后作业!抖个机灵,楼下回答
    giuem
    giuem
    Apr 24, 2018 via iPhone
    2
    外排序?
    610915518
    610915518
    Apr 24, 2018 via iPhone
    3
    统计每个数字的个数,然后按照顺序打印出来……
    zhengxiaowai
    zhengxiaowai
    Apr 24, 2018
    4
    编程珠玑了解一下
    610915518
    610915518
    Apr 24, 2018 via iPhone
    5
    补充一点:分段读取文件
    choury
    choury
    Apr 24, 2018 via Android
    6
    桶排序
    lany
    lany
    Apr 24, 2018 via Android
    7
    请自行完成课后作业!
    leoli66
    leoli66
    Apr 24, 2018 via iPhone
    8
    如果只给你 1k 内存你怎么排序
    Bryan0Z
    Bryan0Z
    Apr 24, 2018 via Android
    9
    桶排序吧
    vimiix
    vimiix
    OP
    Apr 24, 2018❤️1
    10
    @giuem 嗯嗯,一看就是大佬,顺着你的答案,我找到了这个 https://www.cnblogs.com/LUO77/p/5838206.html
    vimiix
    vimiix
    OP
    Apr 24, 2018
    11
    @choury
    @Bryan0Z
    桶排序,也是一种好的方法,学习了
    vimiix
    vimiix
    OP
    Apr 24, 2018
    12
    @leoli66 请大佬指点,这个题目我是今天刚遇到,真的被问住了。还是书读的少。
    vimiix
    vimiix
    OP
    Apr 24, 2018
    13
    @kangkang
    @lany
    嗯,课后作业还不少😂
    wellsc
    wellsc
    Apr 25, 2018 via iPhone
    14
    Bitmap 了解一下
    wweir
    wweir
    Apr 25, 2018 via Android
    15
    磁盘排序了解一下
    jorneyr
    jorneyr
    Apr 25, 2018
    16
    文件归并排序
    watzds
    watzds
    Apr 25, 2018 via Android
    17
    了解一下
    daigouspy
    daigouspy
    Apr 25, 2018 via Android
    18
    @leoli66 如果不给你内存怎么排序
    jyf
    jyf
    Apr 25, 2018
    19
    mergesort with bucket lesser than 10M
    winglight2016
    winglight2016
    Apr 25, 2018
    20
    很久之前在金山面试,碰到过类似问题。。。
    gamecreating
    gamecreating
    Apr 25, 2018
    21
    分段写入文件呗 内存占用少 那么 IO 占用就高咯
    拿时间换空间
    creedowl
    creedowl
    Apr 25, 2018
    22
    时间排序了解一下 :doge:
    owt5008137
    owt5008137
    Apr 25, 2018 via Android
    23
    归并排序+中间结果存磁盘
    glacer
    glacer
    Apr 26, 2018
    24
    @610915518 不可能只有 1-9 吧
    RicardoScofileld
    RicardoScofileld
    Apr 26, 2018
    25
    要是只有 1-9 就好办了,要是还有别的就麻烦了
    610915518
    610915518
    Apr 26, 2018
    26
    @glacer 就算最大的数有好几百万的,10 MB 内存也够用了。
    xyjincan
    xyjincan
    Jul 12, 2018
    27
    如果是不重复的数,可以分配一段内存,便利用位操作标记,然后输出,要不就要外部排序。
    老师讲过这个题,排序五百万电话号码,
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1283 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 70ms · UTC 17:02 · PVG 01:02 · LAX 09:02 · JFK 12:02
    ♥ Do have faith in what you're doing.