二叉樹 遍曆非遞迴演算法

1.二叉樹建立,節點為空白#代替,前序建立;例如:ab#cd##e##f###include <iostream>#include <stack>using namespace std;typedef struct TreeNode{char data;bool tag;struct TreeNode *left;struct TreeNode *right;}TreeNode,*PTreeNode;TreeNode* CreatBitTree();void

遞迴判斷數組是否是升序

//遞迴判斷數組是否是遞增bool f(int a[],int n){if (n==0){return true;}if (n==2){return a[n-1]>=a[n-2];}return f(a,n-1)&&(a[n-1]>=a[n-2]);} void main(){char *s = "abcd12345ed125ss123456789";char

大三將至,思考二三事

雖然我才大三,沒有多少經曆,但我依然有話想說。畢竟,憋在心裡也不是個事。 怎麼說起呢。應該說在大學宿舍是有很多話題的。大家都是同學、朋友,沒有什麼利益衝突,各抒己見。每個人都有很精彩的觀點。可是把我們這些個想法運用於社會會怎樣呢?簡單點說就是我們能夠把自己的想法變成實踐,並從實踐中獲得必要的物質生活資料嗎?我認為:沒有那麼簡單。 為什麼會這樣“看不起”我們自己。從自己說起吧。任何事情,話說的是一套一套、有條有理的,卻幹不成什麼事情。就比如,老師要給我們講課,讓我去借間多媒體教室。而學校進行中一些

hdu2680 Choose the best route

起點有多個,處理方法就是再設定一個起點a作為真正的起點,然後a到那多個起點的距離設定成0,這樣那多個起點被當做中間節點來處理,便可以直接使用dijkstra了#include<iostream>#include<cstring>#include<cstdio>#define INF 0x3f3f3f3fusing namespace std;int n,m,s;int dis[1005][1005],cost[1005];bool

HDU1045 Fire Net 暴力搜尋DFS

這題給出的圖的行列範圍較小,所以可以暴力來做。要解決的問題就是怎樣方便的枚舉完所有可能的情況,並且得到放置blockhouse的最大值。這要在dfs上下功夫了。代碼中的dfs原型為dfs(int i,int num)。其中 i  為記錄該次搜尋已經到達那一個點了(i=1、2、...、n*n

簡單的加密,解密程式

//       朱大偉         20062479369 #include <stdio.h>#define MAX 50int k;//字元長度 char arry1[MAX],arry2[MAX],arry3[MAX];//加密後保留在arry2中//********************加密**********************void Secret(){              char ch;                int i=0,j=0;    

HDU 2161 Primes 判斷素數

貼這題並不是因為這題難。主要是我寫過幾題求素數的題。覺得這種判斷數是否是素數的方法還比較好。就貼在這了。歡迎大家發表關於如何求素數的見解。 AC代碼:31MS#include<iostream>using namespace std;const int MAX=16001;bool prime[MAX];void initial(){memset(prime,true,sizeof(prime));prime[1]=prime[2]=false;int i,j,tmp;for(i=3

sdut2500 0\’s 階乘相關

求階乘末尾零個數的方法,剛學會的具體參見http://blog.sina.com.cn/s/blog_4fd55a4f01007ugc.htmlhttp://blog.sina.com.cn/s/blog_5f36f8370100eb0h.html#include<iostream>#include<cstring>#include<cstdio>#define ll long long using namespace std;ll a;ll f(ll t){

sdut2404 Super Prime

輸出有時候是YES NO,有時候是Yes No,有時候是yes no。因為這個WA實在可惜,Be careful !#include<iostream>#include<cstring>#include<cstdio>#include<cmath>using namespace std;#define M 100000bool mark[M+5],issuper[M+5];int su[M+5];int k;void prime(){

第十篇 jmp $

        在彙編中 $ 的作用是取 $ 所在處的地址。所以jmp $就是一個死迴圈了。除非有中斷,會轉去執行中斷服務程式。但要注意的是:返回的地址還是jmp  $,而不是其下一條語句。       因為,在jmp $執行是會把jmp $語句所在的地址裝到程式計數器PC中。中斷來臨後PC被壓棧。中斷服務程式返回後,從棧中取回PC的值並開始執行。此時,PC的值是jmp $的地址!       微機課設就栽在了這條語句上了。。。       個人覺得遇到這個問題的主要原因就在於不夠理解什麼才叫“

第一篇 搭建開發環境

學習彙編對於瞭解電腦結構、最佳化代碼的效能都是有很多好處的。所以,如果你對硬體高度興趣,學好彙編是基本功;如果你對編程有興趣,學好彙編可以使你的代碼更加高效。 以下內容純屬一個學習X86(主要

hdu4545 魔法串

沒有使用LCS,畫蛇添足了一步導致找了一晚上錯誤,難道我的RP又欠費了?#include<iostream>#include<cstring>#include<cstdio>using namespace std;int main(){char s1[1005],s2[1005];bool map[30][30];int t,m;int len1,len2;char t1[3],t2[3];int i,j,icase=1;scanf("%d",&t);

hdu2112 HDU Today

map好像挺慢的#include<iostream>#include<string>#include<cstdio>#include<map>#define INF 0x3f3f3f3fusing namespace std;int dis[155][155],cost[155];bool vis[155];map<string,int>list;void dijkstra(int s,int t,int len){int

記憶體調試MEMWATCH

記憶體調試 - MEMWATCH MEMWATCH 由 Johan Lindh 編寫,是一個開放原始碼 C 語言記憶體錯誤偵測工具,您可以自己下載它(請參閱本文後面部分的參考資料)。只要在代碼中添加一個標頭檔並在 gcc 語句中定義了 MEMWATCH 之後,您就可以跟蹤程式中的記憶體流失和錯誤了。MEMWATCH 支援 ANSI C,它提供結果日誌紀錄,能檢測雙重釋放(double-free)、錯誤釋放(erroneous free)、沒有釋放的記憶體(unfreed

hdu3555 Bomb 數位DP

數位DP初學者,代碼就是網上千篇一律,相似性極高的數位DP代碼一個不錯的題解http://www.cnblogs.com/luyi0619/archive/2011/04/29/2033117.html#include<iostream>#include<cstring>#include<cstdio>#define llong long longusing namespace std;llong dp[20][3];int digit[20];int

hdu3790 最短路徑問題

這道題值得一做,每條邊有兩個費用,第二個費用從屬於第一個費用#include<iostream>#include<cstring>#include<cstdio>#define INF 0x3f3f3f3fusing namespace std;int dis[1005][1005],dis1[1005][1005];int cost[1005],cost1[1005];bool vis[1005];int n,m;void dijkstra(int

public,private,protected

class parent{public:parent(int var=-1){m_nPub=var;m_nPtd=var;m_nPrt=var;}public:int m_nPub;protected:int m_nPtd;private:int m_nPrt;};//公有繼承class child1:public parent{public:int GetPub(){return m_nPub;};int GetPtd(){return m_nPtd;};//int

hdu3415 Max Sum of Max-K-sub-sequence

我的第一道單調隊列題目,之前有看過這道題的題解,並簡單瞭解了單調隊列,本以為自己能獨立寫出來,戰戰兢兢寫完,一調試果然是錯的,找到了原因還是不知道該如何解決,無奈再看題解,隊列裡存的是數組下標,我存的是元素自身,這樣就不能維護子序列的長度,顯然是錯的。總結:菜鳥智力是硬傷,還有很長的路要走。#include<iostream>#include<cstring>#include<cstdio>using namespace std;int sum[2*10001

HDU 1262 尋找素數對

該題比較簡單。給出一個偶數,要求找到兩個素數,其和為該偶數,並且兩個素數相差盡量小。思路:在judge()函數中打出一張10000以內的素數表。prime[i]=true表示數i為素數,反之不是。然後再在main()中從接近輸入n/2的數開始漸進尋找! AC代碼:51MS#include<iostream>using namespace std;const int MAXNUM=10000;bool prime[MAXNUM+1];void judge()

快速排序,堆排序,希爾排序,插入排序

1.快速排序#include <iostream>using namespace std;void qsort(int a[],int i,int j);//快速排序void main(){int a[]={49,38,65,97,76,13,27};qsort(a,0,6);for (int i=0;i<=6;i++){cout<<a[i]<<" ";}cout<<endl;}int part(int a[],int i,int

總頁數: 61357 1 .... 17148 17149 17150 17151 17152 .... 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.