《劍指offer》第二十八題(對稱的二叉樹)

2022-09-07 23:09:29 字數 1722 閱讀 1367

//

面試題28:對稱的二叉樹

//題目:請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和

//它的映象一樣,那麼它是對稱的。

#include

#include

"binarytree.h

"bool issymmetrical(binarytreenode* proot1, binarytreenode*proot2);

bool issymmetrical(binarytreenode*proot)

bool issymmetrical(binarytreenode* proot1, binarytreenode*proot2)

//注意這裡有個關鍵是,要測試是否都是空的,詳見test9和10

//********************測試**********************

void test(const

char* testname, binarytreenode* proot, bool

expected)//8

//6 6

//5 7 7 5

void

test1()//8

//6 9

//5 7 7 5

void

test2()//8

//6 6

//5 7 7

void

test3()//5

/// \

//3 3

/// \

//4 4

/// \

//2 2

/// \

//1 1

void

test4()//5

/// \

//3 3

/// \

//4 4

/// \

//6 2

/// \

//1 1

void

test5()//5

/// \

//3 3

/// \

//4 4

/// \

//2 2//\

//1void

test6()

//只有乙個結點

void

test7()

//沒有結點

void

test8()

//所有結點都有相同的值,樹對稱//5

/// \

//5 5

/// \

//5 5

/// \

//5 5

void

test9()

//所有結點都有相同的值,樹不對稱//5

/// \

//5 5

/// \

//5 5

/// /

//5 5

void

test10()

void main(int argc, char*ar**)

劍指offer第二十八題

題目描述 陣列中有乙個數字出現的次數超過陣列長度的一半,請找出這個數字。例如輸入乙個長度為9的陣列。由於數字2在陣列 現了5次,超過陣列長度的一半,因此輸出2。如果不存在則輸出0。思路 看到這個題目,我腦子裡第乙個蹦出來的思路是用樹來解決,因為這個題目是要記錄鍵對應的值,記錄完了過後再去查詢鍵對應的...

第二十八天

1 建立乙個名稱為itcast的資料庫。create database itcast 2 設計資料表tb student的字段結構,欄位有id 學號 name 姓名 age 年齡 enrolmentdate 入學時間 並選擇適合的資料型別。tb student資料表的字段結構如下表所示 欄位名 型別...

蛻變,第二十八天

1 什麼是包 包是模組的一種形式,包的本質就是乙個含有 init py檔案的資料夾 2.為什麼要有包 因為如果我們要把我們寫的一大堆功能分類處理,並且數量眾多,我們需要進行分檔案儲存,則需要用到包的概念 3 如何用包 匯入包就是在包下的 init py import from import 注意的問...