题目
可以采用双指针解法,一个可以存水的区域水平线必然是这个区域左边或者右边,从左边数定义left指针确定一个边,遇到比left高的则表明这是一个可以存水的区域。...
如果 nums[left] + nums[right] > target,那么只能左移 right 指针来调整大小,因为 left 指针右移的话,就重新访问了一遍访问过的元素。
但是void是可以定义指针的,void*表示万能型指针类型,可以与任何指针类型进行转换,特别是内存拷贝里用的很多。
虚析构#include<iostream>class Base{public:Base() { std::cout << "base 构造" << std::endl; }virtual~Base() { std::cout << "base 析构" << std::endl; }};class......
可以直接看图,两个指针分别从A,B开始走,走到头后走对方的路,那么两者第一次相等的时候要么是有公共结点然后相较于共同结点上,要么没有相遇点最后都为null...
双指针法,定义一个快指针先跑n步,慢指针开始跑,当快指针跑到最后一个元素的时候,慢指针下一个结点就是要删除的结点