zoukankan      html  css  js  c++  java
  • SDKD 软件18-顺序表

    数据结构萌新,欢迎指正

    判断题

    选择题

    编程题

    题意

    我们可以使用 C 语言提供的数组直接进行线性表操作,由于题目未给出明确的问题规模,我们既可以根据经验预测出问题规模,也可以根据输入动态的开出相应大小的内存
    数据很水变现不出 ({O(n)})({O(n^2)}) 的区别

    解法1:水题快速AC法

    时间 ({O(n)}) 空间 ({O(1)})

    // 答案正确,2ms,436KB
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n;
        cin >> n;
        int arr[n + 1];
        for (int i = 0; i < n; i++)
            cin >> arr[i];
        int a, b;
        cin >> a >> b;
        bool flag = true;
        for (int i = 0; i < n; i++)
            if (arr[i] < a || arr[i] > b)
                {
                    if(flag) flag = 0;
                    else cout << " ";
                    cout << arr[i];
                }
        return 0;
    }
    

    解法2:真就删除法(正道)

    时间 ({O(n^2)}) 空间 ({O(1)})

    // 答案正确,3ms,488KB
    #include <bits/stdc++.h>
    using namespace std;
    int len, x, y;
    int main()
    {
        cin >> len;
        int a[len];
        for (int i = 0; i < len; i++)
            cin >> a[i];
        cin >> x >> y;
        for (int i = 0; i < len; i++)
        {
            if (a[i] >= x && a[i] <= y)
            {
                for (int j = i; j < len - 1; j++)
                    a[j] = a[j + 1];
                --len, --i;
            }
        }
        for (int i = 0; i < len; i++)
        {
            if (i != 0) cout << " ";
            cout << a[i];
        }
        cout << endl;
    }
    
  • 相关阅读:
    常见DOS命令
    前台传参到后台出现中文乱码问题
    Servlet.init() for servlet [spring-dispatcher] threw exception
    ES6-2
    ES6语法(一)
    JS区分对象类型
    ko数组
    sortable的基本属性
    MUI消息推送
    target和currentTarget
  • 原文地址:https://www.cnblogs.com/YY666/p/11459948.html
Copyright © 2011-2022 走看看