ICode9

精准搜索请尝试: 精确搜索
  • 我的设计模式之旅 ⑧ 状态模式2022-09-11 22:03:10

    一个菜鸟的设计模式之旅,文章可能会有不对的地方,恳请大佬指出错误。 编程旅途是漫长遥远的,在不同时刻有不同的感悟,本文会一直更新下去。 程序介绍 本程序实现状态模式。一个玩家从满血到死亡的过程有多个状态,假定健康、轻伤、重伤、死亡状态,当玩家扣血时判断并切换状态,触发不同状

  • C++ 指针的访问2022-09-10 11:33:44

    1.访问指针 #include <iostream> #include <windows.h> #include <string> using namespace std; int main() { int room = 2; int room1 = 3; int* p1 = &room; int* p2 = p1; int* p3 = p1; printf("room的地址:%d\n"

  • 局部变量,局部静态变量,全局变量,全局静态变量区别及位置(转)2022-09-08 23:30:49

    局部变量,局部静态变量,全局变量,全局静态变量区别: 局部变量: 栈区局部静态变量:静态区全局变量: 静态区的常量区全局静态变量:静态区 在进行C/C++编程时,需要程序员对内存的了解比较精准。经常需要操作的内存可分为以下几个类别: 1、栈区(stack)— 由编译器自动分配释放 ,存放函数

  • 平衡树做题记录2022-09-08 08:30:21

    板子就不说了。 P2786 英语1(eng1)- 英语作文 红黑树 map 随便做,用一个 map 存下字符串对应的值,一个字符一个字符读入,然后判断, 如果不是数字并且不是字母,说明空格或者符号,处理答案。 /** * author: TLE_Automation * creater: 2022.9.7 **/ #include<cmath> #include<queue> #inc

  • 类和对象-运算符重载2022-09-02 23:32:30

    运算符重载 运算符重载概念:对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型 4.5.1 加号运算符重载 作用:实现两个自定义数据类型相加的运算     成员函数加法重载运算 1 #include <iostream> 2 using namespace std; 3 int a = 10; 4 int b = 10; 5 int

  • 前端也该刷点算法题——双指针解“链表”题也太香了叭!2022-08-31 20:34:12

    双指针解“链表”题也太香了叭! 同步双指针 1 查找链表中倒数第 k 个节点 剑指Offer22.链表中倒数第k个节点 思路: 假设链表的长度为n,不难得出倒数第k个节点即为整数第n + 1 - k。 如果一个指针从头节点开始走k步(头节点算作第1步),则还需n + 1 - k步才能走完链表(到达尾节点的next

  • P1081 [NOIP2012 提高组] 开车旅行2022-08-31 13:02:58

    记城市 \(i\) 的海拔高度为\(h_i\), \(i\) 和 \(j\) 之间的距离 \(d_{i,j}=|h_i-h_j|\)。 旅行过程中,两人轮流开车,第一天 \(A\) 开车,之后每天轮换一次。选择一个城市 \(s\) 作为起点,向编号大的一方行驶,并且最多行驶 \(x\) 公里就结束旅行。 \(B\) 总是沿着前进方向选择一个最近的

  • 2021 Xinjiang Provincial Collegiate Programming Contest2022-08-30 22:30:09

       G. cocktail with snake 题意:给区间宽高:n,m,蛇形走位,问k步之后和原点的曼哈顿距离是多少 分析 int t = k / n 就是走k步后当行数 如果 t 是奇数,说明在往左走 如果 t 是偶数,说明在往右走 k % n 就是当前层往左往右走的步数 讨论一下,算出结果就行了 //------------------------

  • CF765F2022-08-29 19:32:11

    分块。 \(f[i][j]\):\(i\) 一直到第 \(i\) 所在块 \(x\) 尾端,对 \(x+1\sim j\) 块造成贡献/\(i\) 一直到 \(i\) 所在块 \(x\) 开头,对 \(j\sim x-1\) 块造成贡献。 \(mn[i][j]\):块 \(i\sim j\) 的答案。 预处理:块内元素排序,双指针求 \(f\) 后得到 \(mn\)。 查询:整块以及散块对整块的

  • ssh日志记录登陆密码2022-08-29 15:30:32

    ssh记录登陆密码 了解到ssh自身不记录登陆的用户名密码 但我们可以通过修改ssh源码或者打补丁的方式来实现对远程登陆用户密码的记录 只需修改ssh源码或者打补丁重新编译,安装 即可获得一个新的ssh用户端 我们只需关掉原来的ssh 将新安装的ssh启用监听22端口即可 过程 1、准备环境

  • 【NX二次开发】用数学函数获得两点的距离2022-08-27 15:32:18

    两点之间的距离公式:  源码: //获得平面上2点距离 double getPointToPointDis(double p1[2],double p2[2]) { return sqrt((p1[0]-p2[0])*(p1[0]-p2[0])+(p1[1]-p2[1])*(p1[1]-p2[1])); }  

  • 组合逻辑电路描述中采用阻塞赋值,时序逻辑用非阻塞赋值方式赋值2022-08-23 16:03:52

      对于VerilogHDL语言中,经常在always模块中,面临两种赋值方式:阻塞赋值和非阻塞赋值。   对于初学者,往往非常迷惑这两种赋值方式的用法,本章节主要介绍这两种文章的用法。其实,有时候概念稍微不清楚,Bug就会找到我们,下面一文扫清阻塞赋值和非阻塞赋值所有的障碍。     基本概念

  • ARC099F题解2022-08-23 09:00:33

    被杀了,记录一下好了。 对于他那个数组是否相等,直接判断复杂度很高,考虑通过哈希映射之后判断是否相等。 对数组的 Hash 可以类似字符串 Hash那样去做。 于是判断一个区间是否和整个串相同就是 \(\frac{S[R]-S[L-1]}{p^{id[L-1]}}=S[n]\),其中 \(id\) 是指针的偏移量,\(S\) 是执行前缀

  • shallowRef和shallowReactive使用误区-视图更新了2022-08-15 18:04:27

    按照vue3文档中得说明,在使用shallowRef和shallowReactive是浅响应得,即修改深层数据视图应该是不更新得,但是使用过程中往往会出现视图更新得情况,如下: 修改前:         修改后: 发现视图更新了,这是为什么呢? 原因是有其他响应式数据更新了,从而触发了视图更新,例如上图中可以看到妈

  • 力扣-88-合并两个有序数组2022-08-15 17:31:18

    本来觉得很简单,然后准备提交了发现要在数组1里面合并,没有额外空间 然后就有了一个大胆的想法——我直接插进去然后sort class Solution { public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { // 逆向双指针 int p1 = m - 1, p2 = n - 1, index = m

  • 反转链表2022-08-14 09:01:54

    题目描述 题目地址:http://mtw.so/6jyXMj 题目要求 给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。 数据范围:0≤n≤1000 要求:空间复杂度O(1) ,时间复杂度 O(n) 。 题目示例 如当输入链表{1,2,3}时, 经反转后,原链表变

  • Predicate接口的简单使用2022-08-13 00:03:03

    Predicate接口的简单使用 里面只有一个抽象方法 boolean test(T t):判断数据是否符合要求。 其他方法 .and(),.or(),.negate(),.isEqual()四个默认方法,(negate()取反) 简单使用 //1 Predicate接口的使用 List<Integer> list = Arrays.asList(1, -2, -9, 8, 5);

  • typedef 和 #define 的区别2022-08-10 18:32:07

    typedef 是赋予现有类型一个新的名字,而不是创建新的类型。为了“见名知意”,请尽量使用含义明确的标识符,并且尽量大写。 typedef 在表现上有时候类似于 #define,但它和宏替换之间存在一个关键性的区别。正确思考这个问题的方法就是把 typedef 看成一种彻底的“封装”类型,声明之后不

  • javascript 如何理解this2022-08-06 20:02:01

    一、如何理解this 在定义对象时,如果方法中使用了本对象的属性,需要加上this 告诉js调用的是那个对象的属性 // 当一个函数作为对象的方法被调用时,默认this的值等于那个对象。在方法中引用this而不是直接引用一个对象 function sayNameForAll(){ console.log(this.name);//t

  • 主席树2022-08-03 21:31:07

    可持久化线段树,可以有3个维护属性(对问题的转化):P1:树的权值(下标)P2:树的每一个历史状态(前缀和思想)P3:树的维护的值(sum,max等等)

  • 贝赛尔曲线 和 椭圆 [一]2022-08-02 01:33:54

    import sympy as sp # 椭圆曲线长/短半轴 a, b = sp.symbols("a b") # 假定 第一象限的 1/4 的椭圆 , 可以用 3阶 贝赛尔曲线模拟, 我们假定4个控制点为 p1(0,b),p2(x1,b),p3(a,y1),p4(a,0) p1, p2, p3, p4 = sp.symbols("p1 p2 p3 p4") # 贝赛曲线参数 p1*(1-t)**3 + 3*p2*(1

  • MathProblem 19 Balls and an urn problem #12022-08-01 07:00:06

    You have an urn with four balls of different colors. Randomly you draw two at a time, then painting the first ball to match the second. What is the expected number of drawings before all balls are the same color? Solution 每次只能选两个球,然后将第一个球的颜色

  • 尚硅谷--MySQL--基础篇(P1~P95)2022-07-31 12:35:52

    尚硅谷--MySQL--基础篇(P1~P95) 参考链接:https://www.bilibili.com/video/BV1iq4y1u7vj?p=199&spm_id_from=pageDriver 尚硅谷非常好的视频之一,由于时间原因先学的高级篇,建议结合前面《JavaGuider-数据库篇》进行查漏补缺,整个Mysql完整系统性学下来还是非常有收获的。 目录

  • [LC593]有效的正方形-Valid Square2022-07-30 00:31:08

    题目描述 给定2D空间中四个点的坐标 p1, p2, p3 和 p4,如果这四个点构成一个正方形,则返回 true 。 点的坐标 pi 表示为 [xi, yi] 。输入 不是 按任何顺序给出的。 一个 有效的正方形 有四条等边和四个等角(90度角)。 链接:https://leetcode.cn/problems/valid-square 基本思路

  • 隐私保护集合求交2022-07-28 02:31:34

    隐私保护集合求交 隐私保护集合求交(Private Set Intersection,PSI)是这样的一类问题:有两个参与方P1、P2分别拥有两个集合X、Y,现在这两个参与方想要在不透露彼此的各自拥有的集合信息的前提下即P1不知晓Y的任何额外信息,P2也不知晓X的任何额外信息,求得X与Y的交集。尽管可以利用通用MP

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有