二分搜索问题
找出最大值和最小值 时间复杂度O(n)
using System;
using System.Collections.Generic;namespace dataLearn
{class Program{static void Main(string[] args){List<int> list = new List<int> { 10, 3, 6, 4, 7, 1, 9, 2 };var v = get(list, 0, list.Count - 1);Console.Out.Write(v.Item1+" - "+v.Item2);}static (int, int) get(List<int> list, int start, int end){if (start < end){int middle = (start + end) / 2;var left = get(list, start, middle);var right = get(list, middle + 1, end);return (left.Item1 > right.Item1 ? right.Item1 : left.Item1, left.Item2 > right.Item2 ? left.Item2 : right.Item2);}elsereturn (list[start], list[start]);}}
}