0
這是我的問題,我爲它寫了一個算法我想知道這個算法是正確的? 謝謝!!使用插入排序來識別數組的順序
問題: **我給出了一些數組,我應該根據「它們是有序的」對它們進行排序,例如一個數組按照正確的順序出現,並且一個數組表示它的元素在相反的順序是在最後。 假設數組的元素由字母A,C,G,T組成。包括輸入數組的數量(n),長度(m)和數組名稱。 **
我的算法:
Algorithm Sort(n,arr(One)[1,…,m],arr(Two)[1,…m],…arr(n)[1,…,m])
for i<--1 to n
m<-- SumTheNumberOfInversions(arr(i))
v[i] = m
Arrays.sort(v[i])
j <--i
for j<-- 1 to n
return arr(j)
//end of Sort algorithm
---------------------------------------------
Algorithm SumTheNumberOfInversions(arr)
Output: sum of the numbers of inversions
{
int i, j, t,numberOfInversions=0;
for (i=1; i<n; i++)
{
j=i;
t=arr[j];
while (j>0 && arr[j-1]>t)
{
arr[j]=arr[j-1];
numberOfInversions++;
j--;
}
arr[j]=t;
}
return numberOfInversions;
}
請寫下投票的理由! – user355002 2010-06-20 19:07:49
我沒有downvote,但我想這是因爲你的問題是不是很清楚,並讀取像一些不完整的剪切和粘貼作業。 – 2010-06-20 21:07:25