用数组模拟链表
来源:互联网 发布:气动快速接头 淘宝 编辑:程序博客网 时间:2024/06/01 20:01
//Geeksun 2017.11.28 0 : 26
//此模拟链表并不完善,当增加的值为最小值时程序会出错,需加一条判断语句。
#include <stdio.h>
int main()
{
int data[101],right[101];
int i,t,n,len,flag = 0;
scanf("%d",&n);
for(i = 0;i < n;i++)
{
scanf("%d",&data[i]);
}
len = n;
for(i = 0;i < n;i++)
{
right[i] = i + 1;
}
right[n - 1] = -1;
scanf("%d",&data[len]);
t = 0;
while(t != -1)
{
if(data[right[t]] > data[len])
{
right[len] = right[t];
right[t] = len;
flag = 1;
break;
}
t = right[t];
}
if(flag == 0)
{
right[n - 1] = n;
right[n] = -1;
}
t = 0;
while(t != -1)
{
printf("%d ",data[t]);
t = right[t];
}
return 0;
}
{
int data[101],right[101];
int i,t,n,len,flag = 0;
scanf("%d",&n);
for(i = 0;i < n;i++)
{
scanf("%d",&data[i]);
}
len = n;
for(i = 0;i < n;i++)
{
right[i] = i + 1;
}
right[n - 1] = -1;
scanf("%d",&data[len]);
t = 0;
while(t != -1)
{
if(data[right[t]] > data[len])
{
right[len] = right[t];
right[t] = len;
flag = 1;
break;
}
t = right[t];
}
if(flag == 0)
{
right[n - 1] = n;
right[n] = -1;
}
t = 0;
while(t != -1)
{
printf("%d ",data[t]);
t = right[t];
}
return 0;
}
阅读全文
0 0
- 用数组模拟链表
- 用数组模拟链表
- 用数组模拟链表
- 数组模拟链表
- 数组模拟链表
- 用数组模拟双向链表
- 使用数组模拟链表
- 【数组模拟链表】UVA
- 数组如何模拟链表
- 用数组模拟邻接表
- 用数组模拟邻接表
- 用动态数组模拟双向循环链表
- 用数组模拟链表操作 C实现~
- UVa 11988 数组模拟链表
- php模拟链表操作数组
- uva11988数组模拟单向链表
- C/C++:使用数组模拟链表
- 【数组模拟链表(双向)】UVA
- switchHosts!修改hosts后不能立即生效的问题
- Maven学习总结(一)——Maven入门
- 信号量
- OO的五大设计模式原则
- 运用three.js写的漂浮立方
- 用数组模拟链表
- 【雅思备考】Task2——主体段
- 数组元素的逆序输出(改变内存中的数据)
- 【项目管理和构建】——Maven下载、安装和配置(二)
- 【雅思备考】Task2——总阶段
- 命令vmstat查看系统负载
- [学习笔记]Python_字符串
- Codeforces 868F
- 【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目(三)