拼多多服务端开发实习一面

    2024-06-05

    自我介绍

    毕业院校、项目经历、实习工作经历,简单介绍掌握的技能。

    算法题

    将多个有序链表合并为一个有序链表;

    询问了经典的排序算法;

    改进:要求运行时间复杂度 $O(n\cdot log n)$,使用堆排序;

    问答环节 Read More

    C++智能指针

    2024-05-30

    如果在程序中使用new从堆(自由存储区)分配内存,等到不再需要时,应使用delete将其释放。C++引入了智能指针auto_ptr,以帮助自动完成这个过程。随后的编程体验(尤其是使用STL是)表明,需要有更加精致的机制。基于程序员的编程体验和BOOST库提供的解决方案,C++11摒弃了auto_ptr,并新增了三种智能指针:unique_ptr, shared_ptr和weak_ptr...

    Read More

    C++内存管理

    2024-05-23

    内存管理在C++中无处不在,内存泄漏更是每个C++程序中经常发生的错误,因此想要熟练掌握C++,内存管理是首先需要掌握的。

    1. C++内存管理详解

    在C++中,内存分为5个区域,分别是堆、栈、自由存储区、全局/静态存储区和常量存储区

    堆排序详解

    2024-05-20

    堆一般是指二叉堆,可以将一个堆看作是完全二叉树或者近似完全二叉树。

    一、堆的相关概念

    堆是一棵完全二叉树,每个节点的值都小于或等于其子节点的值,位小顶堆;反之位大顶堆。

    一般用数组来表示堆,下标为 $i$ 的节点的父节点下标为 $\frac{(i-1)}{2}$ ,其左右子节点分别为 $(2i+1)$、$(2...

    Read More

    AES加密模式理解

    2024-05-17

    1. AES加密算法与分组密码模式

    高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法,微信小程序加密传输就是用这个加密算法的。对称加密算法也就是加密和解密用相同的密钥,具体的加密流程如下图:

    Read More

    View: User: