2022 .07.19 数据结构练习

1>按值进行修改函数

 int listUpddatev(seqlist *S,datatype olde,datatype newe)     
 {                                                            
     for(int i=0;i<S->len;i++)                                
     {                                                        
         if(S->data[i] == olde)                               
         {                                                    
             S->data[i] = newe;                               
         }                                                    
     }                                                        
     printf ("%d修改为%d\n",olde,newe);                       
     return 0;                                                
 }                                                            

2>按位置进行查找函数,返回查找到的数据

datatype listSearchp(seqlist *S,int pos)         
{                                                
    if(listEmpty(S)||pos<0||pos>S->len-1)        
    {                                            
        printf("%d\n",S->len);                   
        printf("查找失败\n");                    
        return -1;                               
    }                                            
                                                 
    return S->data[pos];                         
}                                                

3>使用选择排序实现顺序表降序

void listSelectsort(seqlist *S)             
{                                           
    int i,j;                                
    int index;                              
    int temp;                               
                                            
    for(i=0;i<S->len-1;i++)                 
    {                                       
        index =i;                           
        for(j=i+1;j<S->len;j++)             
        {                                   
            if(S->data[index]<S->data[j])   
            {                               
                index =j;                   
            }                               
        }                                   
                                            
        if(index !=i)                       
        {                                   
            temp =S->data[i];               
            S->data[i]=S->data[index];      
            S->data[index]=temp;            
        }                                   
    }                                       
                                            
    printf("排序后的结果为:\n");            
    listShow(S);                            
                                            
}                                           

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值