笔试面试相关记录(1)

(1)数据库DDL、DML、DQL、DCL相关

DDL全称是Data Definition Language,由CREATE、ALTER、DROP和TRUNCATE四个语法组成

DML数据操纵语言全程是Data Manipulation Language,主要是进行插入元组、删除元组、修改元组的操作。主要有insert、update、delete语法组成。

DQL数据查询语言全称是Data Query Language,所以是用来进行数据库中数据的查询的,即最常用的select语句

DCL数据控制语言Data Control Language,授权,回滚,提交等。

(2)项目管理的四大模型

项目管理的四大模型,PM必须懂! - 知乎 (zhihu.com)

(3)敏捷开发强调

敏捷开发是一种 软件开发 方法论,强调团队合作、客户满意和快速响应变化。 敏捷开发的核心思想是在 软件开发 过程中,通过不断的迭代和反馈来实现快速开发和高质量的软件产品。

(4)可靠性和可维护性不考虑?

(5)算法:多个有序链表合并(两两合并)

#include 
#include 
using namespace std;

struct Node {
public:
    Node(int v):val(v){}
    int val;
    Node* next = nullptr;
};

Node* merge(Node* n1, Node* n2) {
    if (n1 == nullptr) {
        return n2;
    }
    if (n2 == nullptr) {
        return n1;
    }
    Node* head = new Node(-1);
    Node* pre = head;
    while (n1 && n2) {
        if (n1->val <= n2->val) {
            pre->next = n1;
            n1 = n1->next;
        } else {
            pre->next = n2;
            n2 = n2->next;
        }
        pre = pre->next;
    }
    if (n1) {
        pre->next = n1;
    }
    if (n2) {
        pre->next = n2;
    }
    return head->next;
}

Node* mergeLists(vector& nodes) {
    int size = nodes.size();
    Node* ans = nullptr;
    for (int i = 0;i < size; i++) {
        ans = merge(ans, nodes[i]);    
    }
    return ans;
}
int main() {
    //int a;
    //cin >> a;
    //下面自己构造测试用例,省略
    
}

(6)new,malloc区别,底层

new与malloc的区别以及实现方法 - 知乎 (zhihu.com)

关于C++ new和malloc的区别,记住这张表格就行了! - 知乎 (zhihu.com)

(7)浏览器断点续传。

你可能感兴趣的:(算法,数据结构)