[問題] 兩矩陣,一矩陣排序後同理於另一矩陣

作者: nature23306 (pART)   2015-06-19 17:44:19
標題實在不知道怎麼打 @_@"
要問的問題有點複雜 我盡量講清楚一些
有一個DateTime list 裡面存三筆日期
List<DateTime> mylist = new List<DateTime> { 2014/8/2, 2014/1/16, 2015/6/19 };
另外還創了一個 _id的list 裡面的字串分別代表 mylist的星期
List<string> _id = new List<string> { "Sat", "Wed", "Fri" };
之後把 mylist 照日期排,也就變成
mylist[0] = 2014/1/16
mylist[1] = 2014/8/2
mylist[2] = 2015/6/19
但我也想把 _id 裡的日期按照 mylist 的index變化作處理
期望看到的是:
_id[0] = Wed
_id[1] = Sat
_id[2] = Fri
這問題是雙list之間的index變化
我用硬解法有寫出來(程式碼在最下面),但用兩個for loop感覺速度就很慢...
不知道C#有沒有內建的功能可以辦到
Source code:
(從Main以下開始)
List<string> _id = new List<string> { "Sat", "Wed", "Fri" };
List<string> _newid = new List<string>();
DateTime _for1 = new DateTime(2014, 8, 2);
DateTime _for2 = new DateTime(2014, 1, 16);
DateTime _for3 = new DateTime(2015, 6, 19);
DateTime[] backup = new DateTime[3] { _for1, _for2, _for3 };
List<DateTime> mylist = new List<DateTime> { _for1, _for2, _for3 };
mylist.Sort((x, y) => { return x.Date.CompareTo(y.Date); });
for (int i = 0; i < backup.Count(); i++)
{
for (int j = 0; j < list.Count(); j++)
{
if (backup[j] == mylist[i])
{
_newid.Add(_id[j]);
}
}
}
Console.WriteLine("{0}\n{1}\n{2}", _newid[0], _newid[1], _newid[2]);
Console.ReadLine();
作者: johnpage (johnpage)   2015-06-19 17:50:00
日期與星期合成一個類別,排序那個類別
作者: YahooTaiwan (超可愛南西我老婆)   2015-06-19 18:14:00
你是想要做一個可以排序的 KeyValuePair ?
作者: CrazyAngel (無口系天然呆)   2015-06-19 22:16:00
有日期不就知道是星期幾了?
作者: fo40225   2015-06-19 22:19:00
DayOfWeek 屬性不就有星期幾了?
作者: finalshinji (finalshinji)   2015-07-24 18:18:00
自訂類別啊

Links booklink

Contact Us: admin [ a t ] ucptt.com