软工 课堂作业:选出一个整数组中最大子数组
生活随笔
收集整理的這篇文章主要介紹了
软工 课堂作业:选出一个整数组中最大子数组
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
| 項目計劃日志 | ? | ? | ? | ||
| 10.6?看ppt,熟悉內容。 | ? | ? | ? | ||
| 10.6下午,開始編程調試。 | ? | ? | ? | ||
| 10.7?運行調試,寫博客。 | ? | ? | ? | ||
| ? | ? | ? | ? | ? | ? |
| 時間記錄日志 | |||||
| 日期 | 開始時間 | 結束時間 | 中斷時間 | 凈時間 | 活動 |
| 10.6 | 9:00 | 11:00 | 20min | 1.5h | 查資料 |
| 10.7 | 8:00 | 12:00 | 30min | 3.5h | 查資料,編程 |
| 10.7 | 14:00 | 18:00 | 1h | 3h | 編程,運行,調試 |
| ? | ? | ? | ? | ? | ? |
| 缺陷日志 | |||||
| 時間 | 缺陷 | ||||
| 10.6 | 看基礎,好多東西都忘記了,需要查詢的東西多。進程緩慢。 ? | ||||
?
設計思路:
從第一個數開始,依次與后面的數相加,形成子數組,
然后在比較數組的大小,選出最大的一個。
?
1 #include <iostream> 2 using namespace std; 3 int array[] = {2,3,-8,2,1,-4,}; //int array[] = {-7,6,-1,3,9,5}; 4 const int size = sizeof array / sizeof *array; 5 int maxSubArray(int *array, int size) 6 { 7 int max = -(1 << 31); 8 int sum = 0; 9 int index = 0; 10 while (index < size) 11 { 12 sum += array[index]; 13 if (sum > max) 14 { 15 max = sum; cout << "max: " << max << endl; 16 } 17 if (sum < 0) 18 19 sum = 0; index++; 20 } 21 return max; 22 } 23 int main() 24 { 25 int index = maxSubArray(array, size); 26 cout << "最大的是: " << index << endl; 27 28 }
?
轉載于:https://www.cnblogs.com/guoshaozhou/p/9752155.html
總結
以上是生活随笔為你收集整理的软工 课堂作业:选出一个整数组中最大子数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: $.getJSON()
- 下一篇: python语言中的数据类型之字典