解析:用循环链表即可,一行构造一个链表,变换开始依次输出
// testlleet.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <iostream>
using namespace std;
struct ListNode {
int val;
ListNode *next;
ListNode(int x) : val(x), next(NULL) {}
};
void main()
{
int n;
cout << "Please inout n:";
cin >> n;
//循环链表初始化
ListNode* head = new ListNode(1);
ListNode* p = head;
for (int i = 2; i <= n; i++)
{
ListNode* tmp =new ListNode(i);
p->next = tmp;
p = p->next;
}
p->next = head;
ListNode* q = head;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << q->val << " ";;
q = q->next;
}
cout << endl;
q = q->next;
}
system("pause");
}