具体来说,这里的目标是创建一个链接结构,该结构具有一定数量的节点,介于500万到200万之间.不要担心这个数字很大,或者值可能会超过整数的最大值.如果您已正确创建链接结构,现代计算机可以非常快速地轻松完成此代码.请注意,这些注释确切地描述了该main应该如何工作.以下是亮点:
创建三个循环第一个循环创建链接结构,将每个节点的"下一个"字段连接在一起,并为每个节点提供0到随机选择大小之间的整数值.第二个循环将所有节点相加并计算它们.在这种情况下计算节点应该仅用作检查以确保您没有遗漏.第三个循环再次遍历所有节点,这次删除它们.
Node.h
class Node {
public:
Node();
Node(const Node& orig);
virtual ~Node();
bool hasNext();
Node* getNext();
void setNext(Node* newNext);
int getValue();
void setValue(int val);
private:
Node* next;
int value;
};
#endif
Run Code Online (Sandbox Code Playgroud)
Node.cpp
include "Node.h"
include <iostream>
Node::Node() {
next = NULL;
}
Node::Node(const Node& orig) {
next = orig.next;
value = orig.value;
}
Node::~Node() {
}
bool Node::hasNext(){
if (next != NULL)
return true;
else
return false;
}
Node* Node::getNext(){
return next;
}
void Node::setNext(Node* newNext){
if(newNext == NULL) …Run Code Online (Sandbox Code Playgroud)