一本讲如何编写超短代码的日本书

8 views
Skip to first unread message

图灵刘江

unread,
Nov 21, 2008, 4:12:37 AM11/21/08
to TopLanguage
好像有点意思。书里的平台是北大搞的POJ。

台湾版在这里:
http://msdn.microsoft.com/zh-tw/cc807153.aspx

本書簡介:
「Short Coding -寫短碼」是指一邊探討程式原始碼可以縮到多短,一邊研究資料結構、演算法、執行環境的過程。程式高手可透過思考如何寫出
簡捷好程式的過程,加強其邏輯思 考與解決問題的能力,甚至對數學、資料結構與演算法等的活用有更多的體會。「寫短碼」可是涵蓋了程式設計者的思考方
式、程式語法功力、和哲學思維的本質。
本書有非常多的範例題型可讓您體會如何寫短碼,作者除了說明解題的思考方式,並傳授不同程式語法及其深入應用的經驗,在縮短原始碼的過程式中對程式語
法、 函式庫和程式環境有更深入的了解,是想要訓練和提升程式設計功力的讀者不可少的參考用書。

本書目錄:
Chapter 1:短碼入門
1-1:開始寫短碼
1-2:戰場 ~線上評分系統~
1-3:動手試試 ~寫短碼的基礎~
1-4:暖身
COLUMN POJ 的記憶體用量測定程式
Chapter 2:必見!超絕技巧
2-1:把規則發揮到極致
COLUMN 寫短碼時不可欠缺的 De Morgan 定理
2-2:Quick Sort Hack COLUMN 很大的數字
2-3:精通函式庫功能
2-4:確實精簡 1 byte 的靠山
2-5:超魔法.位元運算
2-6:精通指標
2-7:數學問題
2-8:精通演算法
COLUMN 計算量的數量級
2-9:數字的新常識
2-10:1 byte 的熱情
Chapter 3:短碼研究
3-1:邁向進階技巧
3-2:精簡迴圈
3-3:功能強大的擴充語法
3-4:巨集能不能縮短原始碼
3-5:遞迴 main 的奇蹟
COLUMN BFS.DFS 演算法
3-6:Quick Sort Hack II
3-7:作弊原始碼與系統安全
3-8:挑戰難題
Chapter 4:語言對決
4-1:短碼不限語言
4-2:Java vs C
4-3:Pascal vs C
4-4:C++ vs C
4-5:迎接更多挑戰
Chapter 5:鍛鍊自己!
5-1:寫給每位讀者
5-2:寶貴的參考資料
5-3:厲害的短碼寫手們
5-4:最後
Appendix 附錄
A-1:題目一覽
A-2:ASCII 字碼表
A-3:運算子的優先順序與結合規則

learn

unread,
Nov 21, 2008, 4:54:49 AM11/21/08
to pon...@googlegroups.com
C++的STL是是个好东西,我写过一个Dijkstra用priority_queue减少了不少代码,不过priority_queue的缺点是不能改变已push的值并来调整次序,即缺少二叉堆的修改元素操作
2008/11/21 图灵刘江 <liuj....@gmail.com>

琳琳的小狗

unread,
Nov 21, 2008, 6:13:38 AM11/21/08
to pon...@googlegroups.com

看样子不错,有没有内地出版社引进?

图灵刘江

unread,
Nov 21, 2008, 10:19:53 AM11/21/08
to TopLanguage
我手上有一本日文版的样书,看不懂。

不过这种东西实用性我有些怀疑。太短的代码(大概可以理解为内存占用少而且性能好)从软件工程角度来看,不值得提倡。

On 11月21日, 下午7时13分, "琳琳的小狗" <chen.rui...@gmail.com> wrote:
> 看样子不错,有没有内地出版社引进?

谢科

unread,
Nov 21, 2008, 11:25:48 AM11/21/08
to TopLanguage
但ACM就比较爽啦~不用带长长的模板,短短的代码,节约时间...

> > 看样子不错,有没有内地出版社引进?- 隐藏被引用文字 -
>
> - 显示引用的文字 -

Jiahua Huang

unread,
Nov 22, 2008, 8:39:44 AM11/22/08
to pon...@googlegroups.com
2008/11/21 图灵刘江 <liuj....@gmail.com>:

> 好像有点意思。书里的平台是北大搞的POJ。
>
> 台湾版在这里:
> http://msdn.microsoft.com/zh-tw/cc807153.aspx
>

这页面的 试读 无法下载,
The page cannot be found

chaosong fu

unread,
Nov 23, 2008, 11:12:31 PM11/23/08
to pon...@googlegroups.com
数据量大了的话,Dijkstra用STL就比较郁闷了。还是得自己写。

2008/11/21 learn <lear...@gmail.com>



--
非常に、非常に強いよい、非常に調和した

Teng Ren

unread,
Nov 24, 2008, 11:51:41 AM11/24/08
to pon...@googlegroups.com
我咋觉得绝大多数情况下,STL的实现已经非常牛了...哪怕是速度上为人诟病的string,某次想自己写一个,速度怎么也不比stl快(内存上用堆空间而不是栈)...另请教,有效率更高的方式么?

STL之所以某些比较慢,还是源于初始的设计不能够做更快了...比方map的实现是tree map,当然比其他类的hash map慢很多了,再比方某些语言的string pool机制也是能加快速度的重要因素.

2008/11/24 chaosong fu <pit...@gmail.com>

oslv lv

unread,
Nov 24, 2008, 11:04:26 PM11/24/08
to pon...@googlegroups.com
短代码应该还是很有用处的,部分的当然能够容忍,但多起来让人怎么读啊?

想想别人写了一小段代码,自己却要一点点去分析……

不推荐……

2008/11/25 Teng Ren <sjtu.r...@gmail.com>

chaosong fu

unread,
Dec 2, 2008, 3:15:41 AM12/2/08
to pon...@googlegroups.com
当迭代次数超过10000次,STL的容器存储会成为瓶颈。

2008/11/25 Teng Ren <sjtu.r...@gmail.com>



--
非常に、非常に強いよい、非常に調和した

lxcypp

unread,
Dec 2, 2008, 3:42:25 AM12/2/08
to pon...@googlegroups.com
这个问题我没有碰到过,请给出测试用例看看?
我想很多时候是不了解STL的机制导致的瓶颈吧?

2008/12/2 chaosong fu <pit...@gmail.com>
Reply all
Reply to author
Forward
0 new messages