原创 每個程序員都應該瞭解的內存知識【第一部分】

文章來源 每個程序員都應該瞭解的內存知識【第一部分】 [編輯的話: Ulrich Drepper最近問我們,是不是有興趣發表一篇他寫的內存方面的長文。我們不用看太多就已經知道,LWN的讀者們會喜歡這篇文章的。內存的使用常常是軟件性能

原创 色彩設計方法

原文出處: 阿里媽媽 MUX  爲什麼要整理設計色彩方法? 在色彩設計應用中,我們對顏色不同程度的理解,影響到設計頁面的表現,熟練地運用色彩搭配,設計時豈不事半功倍。一張優秀的設計作品,它的色彩搭配必定和諧得體,令人賞心悅目,反思我

原创 什麼是堆和棧,它們在哪兒?

原文出處: StackOverflow   譯文出處:獨酌逸醉    問題描述 編程語言書籍中經常解釋值類型被創建在棧上,引用類型被創建在堆上,但是並沒有本質上解釋這堆和棧是什麼。我僅有高級語言編程經驗,沒有看過對此更清晰的解釋。我

原创 你不知道的 字符集和編碼(編碼字符集與字符集編碼)

原文出處: 蹦極的饅頭   歡迎分享原創到伯樂頭條 我的上篇文章,有朋友提出字符集和編碼的區別,我在此立文和大家討論下 常說的字符集和編碼區別,其實就是編碼字符集和字符集編碼的區別,其實,單單如果只是說字符集,沒有任何編碼的概念的話

原创 Unicode 字符集與它的編碼方式

正式內容開始之前,我們先來了解一個基本概念,編碼字符集。     編碼字符集:編碼字符集是一個字符集,它爲每一個字符分配一個唯一數字。Unicode 標準的核心是一個編碼字符集,字母“A”的編碼爲 004116 和字符“”的編碼爲

原创 10分鐘掌握XML、JSON及其解析

By Long Luo 引言 NOKIA 有句著名的廣告語:“科技以人爲本”。任何技術都是爲了滿足人的生產生活需要而產生的。具體到小小的一個手機,裏面蘊含的技術也是浩如煙海,是幾千年來人類科技的結晶,單個人窮其一生也未必能掌握其

原创 淺談算法和數據結構(11):哈希表

在前面的系列文章中,依次介紹了基於無序列表的順序查找,基於有序數組的二分查找,平衡查找樹,以及紅黑樹,下圖是它們在平均以及最差情況下的時間複雜度: 可以看到在時間複雜度上,紅黑樹在平均情況下插入,查找以及刪除上都達到了lgN的時間

原创 淺談算法和數據結構(6):符號表及其基本實現

原文出處: 寒江獨釣  前面幾篇文章介紹了基本的排序算法,排序通常是查找的前奏操作。從本文開始介紹基本的查找算法。 在介紹查找算法,首先需要了解符號表這一抽象數據結構,本文首先介紹了什麼是符號表,以及這一抽象數據結構的的API,然後

原创 淺談算法和數據結構(10):平衡查找樹之B樹

原文出處: 寒江獨釣  前面講解了平衡查找樹中的2-3樹以及其實現紅黑樹。2-3樹種,一個節點最多有2個key,而紅黑樹則使用染色的方式來標識這兩個key。 維基百科對B樹的定義爲“在計算機科學中,B樹(B-tree)是一種樹狀數據

原创 淺談算法和數據結構(12):無向圖相關算法基礎

原文出處: 寒江獨釣 從這篇文章開始介紹圖相關的算法,這也是Algorithms在線課程第二部分的第一次課程筆記。 圖的應用很廣泛,也有很多非常有用的算法,當然也有很多待解決的問題,根據性質,圖可以分爲無向圖和有向圖。本文先介紹無向圖

原创 socket通信

步驟一:在TransactionModule中有業務請求時,檢查是否有連上服務器,沒有鏈接上則執行步驟二,如果鏈接狀態正常,則執行步驟三。 步驟二:創建Socket,鏈接服務器,如果鏈接成功,則執行步驟三

原创 每個程序員都應該瞭解的 CPU 高速緩存【第二部分】

文章來源 每個程序員都應該瞭解的 CPU 高速緩存 [編者按:這是Ulrich Drepper寫“程序員都該知道存儲器”的第二部。那些沒有讀過第一部 的讀者可能希望從這一部開始。這本書寫的非常好,並且感謝Ulrich授權我們出版。

原创 淺談算法和數據結構(4):快速排序

原文出處: 寒江獨釣  本篇文章介紹時間複雜度同樣爲O(nlgn)但是排序速度比合並排序更快的快速排序(Quick Sort)。 快速排序是20世紀科技領域的十大算法之一 ,他由C. A. R. Hoare於1960年提出的一種劃分

原创 每個程序員都應該瞭解的“虛擬內存”知識【第三部分】

每個程序員都應該瞭解的“虛擬內存”知識 [編輯注:本文是Ulrich Drepper的“每個程序員應該瞭解的內存方面的知識”文章的第三部分;這一部分談論了虛擬內存,特別是TLB性能。沒有閱讀第1部分和第2部分的人可能現在就想讀一讀了。

原创 淺談算法和數據結構(2):基本排序算法

原文出處: 寒江獨釣 本篇開始學習排序算法。排序與我們日常生活中息息相關,比如,我們要從電話簿中找到某個聯繫人首先會按照姓氏排序、買火車票會按照出發時間或者時長排序、買東西會按照銷量或者好評度排序、查找文件會按照修改時間排序等等。在計