双指针与滑动窗口
题1题目:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素.元素的顺序可以改变.然后返回数组中与 val 不同的元素的数量. 假设 nums 中不等于 val 的元素数量为 k,要通过此题,你需要执行以下操作: 修改 nums 数组,使得 nums 的前 k 个元素包含所有不等于 val 的元素. 返回 k 的值.nums 中的其他元素和数组大小不重要. 方法一:双指针思路及算法:由于题目要求删除数组中等于 val 的元素,因此输出数组的长度一定小于等于输入数组的长度,我们可以把输出的数组直接写在输入数组上.可以使用双指针:右指针 right 指向当前将要处理的元素,左指针 left 指向下一个将要赋值的位置. 如果右指针指向的元素不等于 val,它一定是输出数组的一个元素,我们就将右指针指向的元素复制到左指针位置,然后将左右指针同时右移; 如果右指针指向的元素等于 val,它不能在输出数组里,此时左指针不动,右指针右移一位. 整个过程保持不变的性质是:区间 [0,left) 中的元素都不等于...
Unity(一)
平动和转动123456789101112131415161718192021222324252627public class instance : MonoBehaviour{ public float moveSpeed = 10f; public float turnSpeed = 50f; private void Update()//update是每帧更新的函数 { if(Input.GetKey(KeyCode.UpArrow)) { transform.Translate(Vector3.forward * moveSpeed*Time.deltaTime); } //translate是平移,vector3是一个三维数组,forward代表(0,0,1) //deltatime是两帧之间的时间间隔 //没有使用 Time.deltaTime 的问题 //如果你只是使用...
Github拒绝push
Github 拒绝了你的push你有没有出现以下问题? 1234 ! [remote rejected] HEAD -> main (push declined due to repository rule violations)error: failed to push some refs to 'https://github.com/cmzcc/cmzcc.github.io.git'FATAL Something's wrong. Maybe you can find the solution here: https://hexo.io/docs/troubleshooting.html 今天本人在像往常一样运行hexo d...
c++中关于深拷贝与重载赋值运算符的思考
深拷贝12345678910111213141516171819202122232425262728293031323334353637383940414243class instance{public: int age; int* height;instance(int a,int h){ age = a; cout << a << endl; height=new int(h); cout << *height << endl;}~instance(){ if (height != NULL) { delete height; height = NULL; cout << "已清空" << endl; }}instance(const instance& p){ age = p.age; //height = p.height;编译器默认实现的就是这行代码 //深拷贝如下 height =...