文件名称:programming-pearls:乔恩·本特利(Jon Bentley)的著名编程珍珠演练
文件大小:39KB
文件格式:ZIP
更新时间:2024-05-22 10:34:46
Java
编程珍珠 乔恩·本特利(Jon Bentley)着名的《编程珍珠》的演练。 当前内容 第1栏 使用位图数据结构以及用于对范围[1, n] k唯一元素进行采样的高效算法的快速系统排序实现,为此,我使用了floyd的随机采样算法。 问题是要设计一种有效的算法,以使用少于2 MB存储量对全部少于10,000,000的1,000,000不同正元素进行排序。 这里设计的排序算法比Java系统排序高4倍。 专栏2-算法 在单词列表中将字谜分组。 通过为每个单词分配一个签名作为其排序形式并将所有具有相同签名的单词分组在一起来解决。 按i旋转向量到位。 归结为将向量ab更改为ba ,其中a和b表示元素的连续块。 通过在数组上使用一堆reverse操作可以很好地解决此问题。 将矩阵旋转到位。 通过使用就地换位算法解决。 第3列-数据结构 设计一个干净且可维护的算法来处理各种投入收入的税额。 关键是要使用
【文件预览】:
programming-pearls-master
----column-fifteen-strings()
--------LongestRepeatedSubstring()
--------StringSearch()
----column-one()
--------CleverSort()
----column-three-data-structures()
--------USTaxCalculation()
----LICENSE(18KB)
----column-fourteen-heaps()
--------SeedPlayer()
--------SequentialDiskAccessLogTime()
--------PriorityQueue()
----column-eight-algorithm-design-techniques()
--------turnpike.py(597B)
----.gitignore(189B)
----README.md(2KB)
----column-two-algorithms()
--------RotateArrayInPlace()
--------rotate-2d.py(686B)
--------group_anagrams.py(394B)