C ++ векторные операции в C # - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь переписать c ++ в ac # программу, используя векторы.У меня проблема с кодом, приведенным ниже.Проблема в строке в цикле: tab[(s[i])].push_back(i).Я хотел бы знать, возможно ли сделать что-то подобное в C #.Спасибо.

#define MAXN 1000005
int n, pos, temp;
vector<int> tab[255];
char s[MAXN];
int main(){
  temp = scanf("%d", &n);
  temp = scanf("%s", s);
  for (int i = n - 1; i >= 0; --i)
    {
        tab[int(s[i])].push_back(i);

    }
}

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019

Использовать функцию реверса из списка C #.

List<int> myList = new List<int>();
for (int i = 0; i < n; ++i)
{
    myList.Add(i);
}
// using method Reverse() 
myList.Reverse();
0 голосов
/ 09 апреля 2019

Самый простой подход - использовать List<int>().

В этом случае

List<int> myList = new List<int>();
for (int i = n - 1; i >= 0; --i)
{
    myList.Add(i);
}

сделает трюк.

...