拉丁方阵
来源:互联网 发布:js 正则表达式语法test 编辑:程序博客网 时间:2024/04/28 22:02
问题描述:
n × n 的方阵,在这种 n × n 的方阵里,恰有 n 种不同的元素,每一种不同的元素在同一行或同一列里只出现一次。
循环链表,第一次遍历从头节点开始,打印第一行,以后每行都从下一个节点开始遍历。
#include<iostream>#include<stdlib.h>using namespace std;typedef int ElemType;struct Node{Node* next;ElemType data;};typedef Node LinkList;Node* Create(int n)//尾插法创建循环链表{Node *head,*p,*q;head=new Node;head->next=NULL;q=head;for(int i=0;i<n;i++){p=new Node;p->data=i+1;q->next=p;q=p;}p->next=head->next;free(head);return p->next;}void main(){int n=5;Node *head=Create(n);Node *p=head;for(int i=0;i<n;i++){p=head;for(int j=0;j<i;j++)p=p->next;for(int k=0;k<n;k++){cout<<p->data<<" ";p=p->next;}cout<<endl;}}
阅读全文