隊列的層次——由廣度優先搜尋法想到的

         昨天考慮了一個馬跳棋盤的程式,思路很簡單就是用廣度優先搜尋法進行搜尋,不過思考過程中把我原來的一個隊列處理的層次問題解決了,曾經有個類似要用到隊列層次的問題,當時沒怎麼細心考慮過,問題也就落下來的。        原題大意:       在一個8*8的象棋棋盤中,輸入馬的起始座標和結束座標,試問馬從起始位置到結束位置共需要跳多少步?       比如:馬從A1跳到E4,這裡用廣度優先搜尋法,把每次能跳到的點都標記出來                             

給定一個十進位整數N,求出從1到N的所有整數中出現”1”的個數

//給定一個十進位整數N,求出從1到N的所有整數中出現”1”的個數。int cal_num_of_1(int n){int count = 0;int temp;for(int i = 1; i<n+1; i++){temp = i;while(temp>0){if(temp%10 == 1){count++;}temp = temp/10;}}return count;}int cal_num_of_1_2(int n){//1的個數int count = 0;//當前位int

前向聲明(forward declaration)

C++ primer 筆記可以聲明一個類而不定義它:class Screen;  //declaration of the Screen class這個聲明有時稱為前向聲明(forward declaration),在程式中 引入了類類型Screen。在聲明之後、定義之前,類Screen是一個不完全類型(incomplete

cool! 用sourcesight實現核心源碼級調試

cool!

Tangram 截圖(二)

Tangram MFC 應用程式基底於Flash動畫的Splash起始螢幕視窗:使用者可以設計自己特徵的Splash,然後作為程式資源嵌入到程式中。Tangram Designer的工具箱介面也是基於Flash動畫實現的,如果使用者願意,可以設計自己的Designer Tool Box(用Flash、HTML、C++View或其他對象均可)        具有HTML背景的程式介面:同樣,使用者可以任意定製程式背景,可以是一個Flash

未雨綢繆——臨界區中斷處理

未雨綢繆——臨界區中斷處理刺蝟@http://blog.csdn.net/littlehedgehog         為什麼Linux 核心裡面很多代碼為了處理race condition(競爭條件),都加上了諸如cli sti這樣的開關中斷指令,這個問題貌似很不值得一提。在wait_on_buffer函數(如下代碼所示)中,開關中斷僅僅就是為了避免競爭條件和中斷對臨界代碼的幹擾?static _inline void wait_on_buffer(struct buffer_head *

番茄”為什麼會凋謝?

“番茄”為什麼會枯萎?        

迷宮最短路徑演算法(使用隊列)

    (上接迷宮遞迴演算法)    順便也把圖裡求迷宮最短路徑演算法貼出來,主要思想是利用隊列,採用廣度優先搜尋法,當第一次出現目的點時,中斷搜尋,並輸出路徑。程式還是主要使用的C語言,對於隊列操作我又重寫了下基本作業碼比如入隊、出隊等,沒辦法對C++不熟啊!!   個人認為需要說明的是:   1. 為了記錄路徑,借鑒了樹的雙親標記法,所以隊列中的數組元素定義如下    typedef struct  ...{    int location;     //(x-1)*3+y     int 

我的神舟一歲了!

刺蝟@http://blog.csdn.net/littlehedgehog   當初選擇買神舟還是猶豫了一番的,網上槍手文章太多,不知道誰真誰假。最後還是選擇的還是神舟,呵呵,記得當初想法挺實在的:本來打算用獎學金的錢買電腦,後來我考慮要買筆記本,獎學金的錢肯定是不夠的,只好還是問媽要錢了。當時打算買了電腦後一定用它多寫點代碼,把錢掙回來,到時還給媽的。那筆記本還是買個便宜的吧,這樣我不會負債太高~~  呵呵 

自己動手寫作業系統讀書筆記系列 導引

自己動手寫作業系統讀書筆記系列導引刺蝟@http://blog.csdn.net/littlehedgehog自己動手讀書筆記系列 本來只是些天之痕和我在這一個多月研究《自己動手寫作業系統》時且看且記的小段筆記批註而已,文章裡都是記錄些環境搭建、編程所感的自娛自樂文字,沒想過今天還會來整訂成一個小系列。是時,天之痕還忙著添上他的《自己動手寫作業系統 環境配置》,呵呵,很感謝有天之痕這樣的戰友和我並肩戰鬥在這虛偽 、墮落、令人絕望的校園裡,結伴前行中我不會太過於孤獨~注意:

夥伴演算法(Buddy)

 Hi, Buddy !  刺蝟@http://blog.csdn.net/littlehedgehog     關於位元影像Linux核心夥伴演算法中每個order 的位元影像都表示所有的空閑塊,比如我家的電腦記憶體256M(現在連上個qq首頁都比較卡),理論上的order為0的bitmap有256M/(4K*2)塊。為什麼要除以二呢? 因為 位元影像的某位對應於兩個夥伴塊,為1就表示其中一塊忙,為0表示兩塊都閑。每次alloc或者free要操作夥伴系統時我們都要異或運算,這是因為 所謂異或,

Intel手冊申請攻略

Intel手冊申請攻略刺蝟@http://blog.csdn.net/littlehedgehog  上次無意中在一篇部落格(點擊看原帖) 看到Intel還會免費送書,轉貼過來吧,不過反正我沒申請成功,當時Intel公司給我回郵件說要發送過來了,現在要我的郵遞區號,我後來把郵遞區號補上去後就一直沒有迴音了........ 比較鬱悶。強烈建議是不要用QQ郵箱,美國那邊會拒收的!本來我有張書的貼圖的,後來搞丟了~如果你還不知道IA32 Intel Architecture Software

時不時找個高手試試自己深淺

呵呵,我曾也犯過這個錯誤~中國有句古話叫“文人相輕”。做技術的人、做學問的人,經常會互相看不起,認為自己做的才是最好的,別人都不如自己。這樣的心理下,往往一段時間的學習和進步後,經常會產生自己很牛的感覺,自高自大,不思進取。這樣的情況在很多年輕的技術員身上時有發生,很普遍。   

虛擬機器ubuntu與XP的檔案分享權限設定

虛擬機器ubuntu與XP的檔案分享權限設定工欲善其事必先利其器刺蝟@http://blog.csdn.net/littlehedgehog   問題源自《自己動手寫作業系統》中虛擬機器Linux與宿主機Windows共用檔案的問題。廢話不多說。我先把我遇到問題列下:1、最初安裝redhat,redhat在虛擬機器中安裝我在高中就遭遇過不幸,裝到最後發現全部花屏,這次用字元介面出現   i8253 count too high,resetting...  

給UDP增加可靠性

給UDP增加可靠性刺蝟@http://blog.csdn.net/littlehedgehog   UNP裡面的例子程式,把計算rtt的演算法改了下,參考的TCP/IP詳解裡面介紹的一個稍微簡單的演算法,另外,不喜歡setjmp這種編程模式,感覺程式碼可讀性較差,最後還是改成使用pselect+signal,這樣代碼會清晰些。   下面是主函數 #include "./unix.h"#include "./rtt.h"static intrttinit;static struct r_info

擁塞控制策略

擁塞控制策略 刺蝟@http://blog.csdn.net/littlehedgehog   《TCP/IP

淺評中斷、陷阱、異常 )

 淺評中斷、陷阱、異常  刺蝟@http://blog.csdn.net/littlehedgehog    前幾天看的一篇好文,從另一個角度介紹了中斷(interrupt)、陷阱(traps)、異常(exception)。  外部中斷,就是我們通常所說的中斷(interrupt)。對於執行的系統來說,這種中斷髮生完全是"非同步"的,根本無法預測到此類中斷會在什麼時候發生。因此,CPU(或者軟體)對於此類外部中斷完全是"被動"的。不過,軟體可以通過關中斷的形式來關閉對中斷的響應,把它"反映情況"

非同步訊號安全和安全執行緒

非同步訊號安全和安全執行緒

Delphi中表單響應按鍵步驟

1.因為KeyPreview預設是 False;我們這裡需要響應鍵盤事件的話,需要將其修改為True;所以KeyPreview:=True; 這對一些快速鍵會有用。在表單內容上修改KeyPreview := True;2.在表單的FormKeyDown函數裡寫:if KeyPreview then    Form將先響應鍵盤事件(在TEdit等控制項之前)else    除非Form Got

實體物件的抽象以及一種基於資料庫的實現

為什麼要使用實體物件的概念實體物件指的是可永久儲存的資料對象,通常可以用關聯式資料庫的一張資料表或一張主表和與之串連的幾張子表來表示。為什麼要引入實體物件的概念呢?我可以肯定您是看過關於物件導向優點的長篇大論的,不過我覺得有必要再嘮叨兩句,因為不是所有用C++或JAVA編程的人都是使用物件導向的方式想問題的。在現實世界中,對象比它的屬性要穩定,所以資料要抽象成對象。比如由於需求的修改,一個圖書管理系統要顯示更多的書目詳細資料,圖書的屬性發生了變化,而圖書這個對象並沒有變,和其他對象(例如書架、借

總頁數: 61357 1 .... 13591 13592 13593 13594 13595 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.