题解 | #从单向链表中删除指定值的节点#

从单向链表中删除指定值的节点

http://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f

虽然但是,C语言用链表可能麻烦了点,但就纯粹解这道题好像不是必须用链表的吧。

#include <stdio.h>
#include <stdlib.h>
int main(){
    int num=0;
    while(scanf("%d",&num)!=EOF){
        int *a;
        a=(int*)malloc(sizeof(int)*num);
        scanf("%d",&a[0]);
        for(int i=1;i<num;i++){
            int temp,value;
            scanf("%d%d",&value,&temp);
            for(int j=0;j<i;j++){
                if(temp==a[j]){
                    for(int k=i; k>j+1;k--)
                        a[k]=a[k-1];
                    a[j+1]=value;
                }
            }
        }
        int delete;
        scanf("%d",&delete);
        for(int i=0;i<num;i++){
            if(a[i]!=delete)
               printf("%d ",a[i]);
        }
        printf("\n");
        free(a);
    }
    return 0;
}
全部评论
审题
点赞 回复 分享
发布于 01-16 09:48 四川

相关推荐

Java大菜狗:纯纯招黑奴,一天还不到两百那么多要求,还不迟到早退,以为啥啊,给一点工资做一堆活,还以不拖欠员工工资为荣,这是什么值得骄傲的事情吗,纯纯***公司
点赞 评论 收藏
分享
评论
10
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务