| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2310 人关注过本帖
标题:删除顺序表中值在S与T之间(S和T的大小关系任意)的所有元素,要求该算法的时 ...
取消只看楼主 加入收藏
h2363752280
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-19
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:3 
删除顺序表中值在S与T之间(S和T的大小关系任意)的所有元素,要求该算法的时间复杂度为O(n),若S和T不合理或顺序表位空则显示错误信息。
删除顺序表中值在S与T之间(S和T的大小关系任意)的所有元素,要求该算法的时间复杂度为O(n),若S和T不合理或顺序表位空则显示错误信息。
顺序表的排序,要求该算法的时间复杂度为O(n㏒2n),然后调用函数输出处理之后的顺序表
#include <stdio.h>
#define N 10
#define size 10
typedef struct
{
    int s[N];
    int size;
}A;
void Delete(A *L,int s[],int t,int d)//t为要删除的数的位置
{
    int i;
    for(i=t;i<N;i++)
    {
        s[i-1]=s[i];
        L.size--;
        
    }
   
}
int main(void)
{
    A *L
    int s[N];
    int i,t,d;
    for(i=0;i<N;i++)
    {
        scanf("%d",&s[i]);
    }
    printf("请输入要删除元素的位置:\n");
    scanf("%d%d",&t,&d);
    Delete(L,s,t,d);
    for(i=0;i<N-d+t+1;i++)
    {
        printf("%d ",s[i]);
    }
    printf("\n");
    return 0;
}
求修改
搜索更多相关主题的帖子: 元素 include 
2013-01-04 23:50
h2363752280
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-19
收藏
得分:0 
把结构体改成这样可以删除吗,求代码,
typedef struct
{
    int *s;
    int MAXLenth;//最大个数
    int    Lenth;//当前长度
}A;
thank you不玩虚的代码,这个之前我写过了,但是老师说不可以这么做,要用动态数组就可以
2013-01-05 17:50
h2363752280
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-19
收藏
得分:0 
删除顺序表中值在S与T之间(S和T的大小关系任意)的所有元素,要求该算法的时间复杂度为O(n),若S和T不合理或顺序表位空则显示错误信息。
怎样删除s到t之间的数尼,
void Delete(A *L,int t)//这里只删除表t位置的
{    if(t<0||t>L->Lenth||t>L->MAXLenth)
  printf("%d ","没有这个元素");
    else
    {for(int j=t+1;j<=L->Lenth;j++)
        L->s[j-1]=L->s[j];
        L->Lenth--;
    }
}
2013-01-05 23:49
h2363752280
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-19
收藏
得分:0 
这个是java的语法吧L->s=new int [n];
2013-01-06 17:11
快速回复:删除顺序表中值在S与T之间(S和T的大小关系任意)的所有元素,要求该算法 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025364 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved