数组

二分法

前提:数组为有序数组,数组中无重复元素。

用left+(right - left )/2 代替 (left + right)/2可以防止溢出

算法题:力扣704

双指针法(快慢指针法)

通过一个快指针和慢指针在一个for循环下完成两个for循环的工作

算法题:力扣26,977

vector

vector result(A.size(), 0)’;:创建一个大小与向量 A 相同的新向量。vector<int>:这表示我们正在声明一个整数向量。向量是C++中的一种数据结构,类似于数组,但更加灵活和方便。<int> 表示这个向量中存储的是整数类型的数据。result:这是向量的名称,你可以根据需’要给它取任何名字。(A.size(), 0):这是向量的初始化器,用来指定向量中的初始值。在这个初始化器中,我们将向量中的所有元素初始化为 0
vector<int>& A 表示声明了一个名为 A 的引用,该引用指向某个整数向量。通过 A 可以直接访问和修改原始向量的内容,而不需要进行复制。

return

return 0;return result; 的选择取决于函数的返回类型以及函数在程序中的作用。如果函数执行成功并且返回的是整数类型的结果,可以使用 return 0;;如果函数执行成功并且返回的是其他类型的结果,可以使用 return result; 来返回结果对象。

滑动窗口

移除链表元素

  • 直接使用原来的链表来进行删除操作
  • 设置一个虚拟头节点再进行删除操作
    算法题:力扣203