写完这段代码很困难,因为我最近开始学习 C++。我需要将用户设置的列表按元素的值分成两部分。例如,有一个列表“3 6 1 33 -4”,用户选择一个单元,得到2个新的列表“3 6 1”和“33 -4”,类似这样。没有想法。有人能帮忙吗?
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
#define MAX 50
int main(void)
{
int list[MAX];
int next[MAX];
int prev[MAX];
int end = 0;
int begin = 0;
for (int i = 0; i < MAX; i++)
{
list[i] = next[i] = prev[i] = 0;
}
cout << "Input the number of elements: ";
int n = 0;
cin >> n;
prev[0] = -1;
cout << "Input elements of list: ";
int count = 0;
for (int i = 0; i < n; i++)
{
cin >> list[i];
next[i] = i + 1;
prev[i] = i - 1;
count++;
}
prev[0] = -1;
next[count] = -1;
begin = 0;
end = count - 1;
cout << "Elements of list: ";
int temp = begin;
do {
printf("%d ", list[temp]);
temp = next[temp];
} while (next[temp] < n);
cout << list[temp] << endl;
system("pause");
return 0;
}
PS 但是双向链表与它有什么关系_我还是不明白...