排序我有一個字母排列,像這樣:C#陣列由%
10% A
20% A
30% A
40% B
50% B
60% B
70% B
80% C
90% C
100% D
我需要的代碼給我造成這樣的:
A 10%-30%
B 40%-70$
C 80%-90%
D 100%-100%
排序我有一個字母排列,像這樣:C#陣列由%
10% A
20% A
30% A
40% B
50% B
60% B
70% B
80% C
90% C
100% D
我需要的代碼給我造成這樣的:
A 10%-30%
B 40%-70$
C 80%-90%
D 100%-100%
如果你的數組進行排序那樣,這應爲你工作:
var result = values.GroupBy(x => x.Last())
.Select(
x =>
string.Format("{0} {1} - {2}", x.Key.ToString(),
x.First().Split()[0],
x.Last().Split()[0]));
我會測試。以上是一個簡單的例子。在這個領域我有100個參賽作品,記錄的分辨率是1%。我有4個字母(ABCD)設置是順序重複。下一封信時,前者不能再重複。 – user3417642
從我的角度來看,主題是首發的意思是這樣的:
static void Main() {
var array = new[] {"A", "A", "A", "B", "B", "B", "B", "C", "C", "D"};
var result = new Collection<string>();
//as u call it "resolution":
const int resolution = 10;
var currentSymbol = array[0];
var startIndex = 1;
for (var index = 0; index < array.Length; index++) {
if (currentSymbol != array[index]) {
result.Add(currentSymbol + " " + startIndex*resolution + "%-" +index*resolution);
currentSymbol = array[index];
startIndex = index + 1;
}
if (index + 1 == array.Length) {
result.Add(currentSymbol + " " + startIndex * resolution + "%-" + (index + 1) * resolution);
currentSymbol = array[index];
startIndex = index + 1;
}
}
foreach (var a in result) {
Console.WriteLine(a);
}
Console.ReadLine();
}
謝謝大家。來自Selman22的項目工作完成。 – user3417642
嘗試一些然後復出。 – clcto
歡迎來到堆棧溢出!請發佈您的解決問題的嘗試,以便我們可以指出問題所在。 – BradleyDotNET
我傾向於解決這些問題的方式是想象我將如何自己做(使用物理卡或其他東西)......因此,我對您的問題是:您將如何手動執行此操作? – lzcd