天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

.net 反序題目的詳細解答第1/2頁

請將方法補充完整:
復制代碼 代碼如下:
static void Reverse(int[] array, int begin, int end)
{
...
}

Reverse方法的作用是將array數組中,從begin下標到end下標之間的元素反序一下,如一個數組初始值是[1, 2, 3, 4, 5, 6],begin為1,end為4,那么當調用了Reverse之后,array數組中的元素便依次成為[1, 5, 4, 3, 2, 6],其中從array[1]到array[4]之前的元素被反序了。此外補充一點……其實本不用補充:這個方法需要對傳入參數的正確性進行校驗,如果用戶調用該方法時傳入了非法的參數,那么則需要拋出異常,并寫清原因。您可以使用您喜歡的語言來實現:C#,VB,Java,Ruby,Python……但是請不要使用內置庫中已經有的功能。:)

  很簡單,不是嗎?只可惜截止到目前,也只有1人給出了正確答案。如果您沒有做過這道題目,那么在查看下面的分析之前,不妨拿張紙拿支筆,寫下您的答案,然后再聽老趙慢慢講來…

主體邏輯
  這道題目的主題邏輯其實非常簡單。不就是把數組中的一部分反序嗎?不過從這一點上面來說,代碼的清晰程度也有較大差距。好的做法和普通的做法,從編程難度和理解上都有一定差距。例如:

1、許多朋友的做法是:既然是反轉數組的一部分元素,那么只要找到中間的位置,然后計算出和begin的偏移量,然后……怎么怎么一搞,就完成了――嗯,似乎還需要根據進行begin和end中間的元素個數是奇數還是偶數分別處理。

2、另一些朋友的做法是:開一個新數組(長度為end - begin + 1),將begin到end之間的元素放到新數組中去,然后反序,然后再復制回來。

3、還有一個朋友認為用棧:把begin到end之間的元素給push到棧中,再一個一個pop出來依次賦值給begin到end,這樣就反序了……唔!數據結構學的不錯!

  只可惜,這樣的做法都復雜了一些。3種做法的時間復雜度均為O(end 主站蜘蛛池模板: 在线不卡日本v二区到六区 在线不卡日本v二区 | 好男人好资源在线观看 | 无限资源在线观看完整版免费下载 | 亚洲精品青青草原avav久久qv | 亚洲成人在线免费 | 抽插的日日液液H | 午夜向日葵视频在线观看 | 国产av在在免费线观看美女 | 亚洲粉嫩美白在线 | 欧美白人极品性喷潮 | 伊人精品在线 | MD传媒在线观看佳片 | 亚洲国产成人久久精品影视 | 国产精品外围在线观看 | 精选国产AV精选一区二区三区 | 麻豆免费观看高清完整视频在线 | 国产亚洲精品久久精品69 | 国产第一页在线视频 | 99久久免费精品国产 | 二级毛片免费观看全程 | 嗯啊…跟校草在教室里做h 嗯 用力啊 嗯 c我 啊哈老师 | 黄色小说在线 | 女人高潮被爽到呻吟在线观看 | 精品久久综合1区2区3区激情 | YELLOW日本免费观看播放 | 色狠狠色狠狠综合天天 | 亚洲午夜精品久久久久久抢 | 91在线一区二区 | 国产真实乱对白精彩 | 亚洲熟女乱色一区二区三区 | 国产亚洲日韩另类在线播放 | 日日做夜夜欢狠狠免费软件 | 国产毛多水多高潮高清 | 中文字幕天堂久久精品 | 久久人妻少妇嫩草AV无码 | 丹麦1o一19sex性hdhd | 一二三区乱码不卡手机版 | 好男人在线视频 | 国产欧美日韩综合精品一区二区 | 人人干人人看 | 国产第一页在线视频 |