作者acgrun (acgrun)
看板TransCSI
標題[討論] 資料結構一題
時間Tue Jul 1 01:06:37 2008
請計算下列程式片段的頻率計數。
1. for ( i = 1; i <= n ; i ++ )
2. for ( j = 1 ; j < n ; j++ )
3. ans = ans + 1 ;
請問這題得答案是什麼呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.160.133
1F:推 s90366770607:ans+n^2 結果看題目所給的ans和n值而定 07/01 01:09
2F:→ s90366770607:說錯 是ans+n(n-1) 07/01 01:09
3F:→ acgrun:這是「頻率計數」也就是三行都要去算的,不是只算第三行的 07/01 01:22
4F:→ acgrun:次數而已。 07/01 01:23
5F:推 forris:用程式跑出來的結果是 n(n-1) 次 07/01 01:28
6F:推 future1234:n*(1+2*(n-1)+1)+1 = 2*n+2*n*(n-1) +1 07/01 01:35
7F:→ acgrun:to forris:n(n-1)是只有第三行在做計算,這一題是要連for 07/01 02:26
8F:→ acgrun:迴圈的次數也要算進去 07/01 02:26
9F:→ acgrun:future1234的答案簡化之後和解答是一樣的 07/01 02:35
10F:→ acgrun:所以future1234是正解 07/01 02:36
11F:→ acgrun:n*(1+2*(n-1)+1)+1N 07/01 02:36
12F:→ acgrun: ^ ^ 請問這兩個一各代表什麼意思呢? 07/01 02:39
13F:→ acgrun:我知道有一個是j的for迴圈的最後一次執行的一,但是還有一 07/01 02:40
14F:→ acgrun:個一代表的是什麼意思呢?y 07/01 02:40
※ 編輯: acgrun 來自: 218.168.160.133 (07/01 02:41)
15F:→ acgrun:我知道為什麼了? 07/01 04:23
16F:→ acgrun:前面的那個一所代表的是n的本身,若是少了那個一,就相當於 07/01 04:23
17F:→ acgrun:第一行沒有算進去,也就是少了n,所以,要有那個一 07/01 04:24