【发布时间】:2011-08-13 20:43:09
【问题描述】:
当谈到 c++ 时,我是世界上最基本的人,我想知道你们是否可以帮助我,如果这样可以。我试图对读入 istream 的节点进行排序,但因为它们被读入。网络上的代码非常复杂,我想知道是否有一种非常基本的方法来实现这一点。
这是我的读取方法,目前它已读入 istream,这很棒,但现在我需要对其进行排序,因为它已读入。我的头疼哈哈
void ListClass::Read(istream& r)
{
char c[13];
r >> c;
r >> numberOfInts;
Node *node = new Node();
head = node;
for(int i = 0; i < numberOfInts; i++)
{
r >> node->data;
cout << node->data << endl;
node->next = new Node;
node = node->next;
}
}
这是我的头文件中的节点类
class Node
{
public:
Node() {} //default constructor
Node(int d, Node* q = 0) : data(d), next(q) {} //constructor with parameters data and next
int data; //holds data in node
Node* next;//pointer to next node
};
【问题讨论】:
-
您已经遇到过哪些方法(“网络上的代码”)? (只是为了避免人们向您推荐相同的人)
-
一个是模板
方法,一个更适合双链表和其他一些方法,但即使是解释它的人也会感到困惑。基本上我在寻找某种我认为的插入排序,但是在寻找它时,除非过于复杂,否则那里没有太多 -
@Tazzy 不需要模板。尝试将一些复杂因素分解为您可以在此问题中提出的问题。
标签: c++ sorting singly-linked-list