using System;
namespace
{
public class Algorithm // メソッドを置くためのクラス
{
public static void MergeSort<T>(T[] array, int first,int last, Func<T, T, bool> comp)
{
if (array != null && comp != null && 0 <= first && first <= last && last <= array.Length)
{
if(last - first > 1)
{
int middle = (first + last) / 2;
MergeSort(array, first, middle, comp);
MergeSort(array,middle, last, comp);
Merge(array, first, middle, last, comp);
}
}
}
}
// end of class Algorithm
class Program
{
static void Main(string[] args)
{
// 処理対象の配列1
double[] voltages = new[] { 14.53, 14.26, 9.85, 9.81, 14.42, 28.66, 11.43, 16.41, 17.18, 13.57, 9.53, 4.74 };
// 処理対象の配列2
DateTime[] days = new[] {
new DateTime(2021, 7, 31), new DateTime(2021, 8, 20),
new DateTime(2021, 5, 6), new DateTime(2021, 8, 14),
new DateTime(2021, 5, 22), new DateTime(2021, 6, 24),
new DateTime(2021, 8, 19), new DateTime(2021, 7, 18),
};
// 処理対象の配列3
string[] foods = new[] {
"orange",
"grape",
"melon",
"apple",
"strawberry",
"banana",
"mango",
"peach",
"lemon",
"blackberry",
};
空欄3: MergeSort<T>()メソッドを使って 配列 voltages の全範囲を値の昇順にソートする
空欄4: MergeSort<T>()メソッドを使って配列 days の全範囲を日付の新しい順 (値の降順)にソートする
空欄5: MergeSort<T>()メソッドを使って配列 foods の全範囲を辞書順(昇順)にソートする
あなたの回答
tips
プレビュー