1、編寫乙個遞迴方法,它返回數n的二進位制表示中1的個數,如果n是奇數,那麼其1的個數等於n/2的二進位制表示中1的個數加1。
public
static
intrecursion(int n)
return n % 2 + recursion(n / 2);
}
2、編寫帶有下列宣告的例程:
public void permute(string str);
private void permute(char str, int low, int high);
第乙個例程是個驅動程式,它呼叫第二個例程並顯示string str中的字元的所有排列。
例如,str是」abc」, 那麼輸出的串則是abc,acb,bac,bca,cab,cba,第二個例程使用遞迴。
public
static
void permute(string str)
private
static
void permute(char str, int low, int high)
system.out.println(s);
}for (int i = low; i < length; i++)
}public
static
void swap(char str, int m, int n)
3、約瑟夫環
n個人從1到n編號,圍城一圈,從1開始報數, 數到x時,將x的編號輸出,並將那個人踢出,下乙個從1再開始報數,直到所有人都出去。
/**
* n個人從1到n編號,圍城一圈,從1開始報數, 數到x時,將x的編號輸出,並將那個人踢出, 下乙個從1再開始報數,直到所有人都出去
* *@return
*/public
static
void
startgame()
int i = -1;
int countx = 0;
while(list.size() != 0)
countx++;
if (countx == x)
}}
資料結構與演算法 演算法 演算法和資料結構
資料結構與演算法 演算法 好吧,在這裡,您被優秀或優秀的軟體開發人員所隔開。在這種情況下,我會告訴您一開始或至少在我的情況下,並且我知道大多數時候,對於我認識的大多數人,您會覺得自己是乙個無能的人或白痴。基本上,我怎麼可能不理解這一點,然後您會感到沮喪。在這種情況下,我會告訴您情況並不像您想的那麼糟...
資料結構 資料結構與演算法01
1 求一組整數中的最大值。演算法 基本操作是 比較兩個數的大小 模型 仔細想想 你並不知道這個整數到底是多大?整數過大你該怎麼去表示?2 足協的資料庫管理的程式 演算法 需要管理的專案?如何管理?使用者介面?模型 3 資料與資料結構 資料 所有能被輸入到計算機中,並被計算機處理的符號的集合計算機操作...
資料結構 資料結構與演算法02
1 演算法設計的原則 設計演算法時,通常應考慮達到以下目標 1,正確性 2,可讀性 3,健壯性 4,高效率與低儲存量需求 1,正確性 規格說明 四個層次 a,程式中不含語法錯誤 b,程式對於幾組輸入資料能夠得出滿足要求的結果 c,程式對精心選擇的 典型 苛刻切帶有刁難性的幾組輸入資料能夠得出滿足要求...