leetCode刷题笔记(9.2-9.9) 48.旋转图像(9.3) 1)图像即二维数组,图像的旋转本质上是二维数组的旋转变换2)二维数组从外层来看,是若干个子数组的集合,子数组内部维护各自的元素,即若干个row里是row.length个column3)由此可理解下面几个关于二维数组的函数: 创建二维数组并初始化 int[][]a=newint[3][4]; //多维数组的每个元素都是数组本身。而且,与C/C不同,Java中多维数组的每一行可以具有不同的长度。 a={ {1,2,3}, {4,5,6,9}, {7}, }; 计算每个子数组的长度即row里column的数目 //计...

  XlqFCvp7Aw7i   8天前   35   0   0 Java

Springboot黑马点评(3)——优惠券秒杀 【还剩Redisson的最后两节没测试后续补上】另外,后期单独整理一份关于分布式锁笔记 1优惠券秒杀实现 1.1用户-优惠券订单设计 1.1.1全局ID生成器 使用数据库自增ID作为订单ID存在问题 1.1.2考虑全局唯一ID生成逻辑 时间戳(Long类型31bit):采取将当前时间与标定时间(自设定一个历史时间)相减,将其秒数相减,采用纪元秒数方法(不可时间节点之间直接相减)longtimeInSeconds=localDateTime.toEpochSecond(ZoneOffset.UTC); 当我们把本地日期时间localDat...

  XlqFCvp7Aw7i   10天前   32   0   0 Java

Springboot黑马点评——缓存 1缓存初识与简单实现 1.1根据商铺id的缓存查询 基础缓存实现:考虑到有数据会同时存在于数据库和缓存中,所以:Q:数据库和缓存的数据一致性问题?A:三种缓存更新策略用来解决一致性问题 1.2缓存更新策略的选择 第一种:内存淘汰 第二种:超时剔除 第三种:主动更新(自行编码) 1.2.1主动更新策略:三种写缓存 一般主动更新策略最通用,主动更新策略又有三种写缓存的方式:一般使用第一种主动更新策略即调用者对缓存和数据库的一致性的操作编码两者同时操作同时我们需要考虑以下三点问题:选择更新数据库删除缓存避免更多的无效写操作选择先操作数据库再删除缓存 不同...

  XlqFCvp7Aw7i   25天前   26   0   0 Java

Leetcode刷题笔记8.12-8.16 19.删除倒数第n个链表结点(8.12) 一个巧妙删除倒数第n个结点的trick该方法避免了对链表的一次全面扫描来获得总长度 //返回链表的倒数第k个节点 ListNodefindFromEnd(ListNodehead,intk){ ListNodep1=head; //p1先走k步 for(inti=0;i<k;i){ p1=p1.next; }//注意这里是向后处理k次 ListNodep2=head; //p1和p2同时走nk步 while(p1!=null){ p2=p2.next; p1=p1.next; } //p2现在指向第...

  XlqFCvp7Aw7i   2024年08月16日   85   0   0 Java

刷题笔记8.5-8.9 刷题顺序依照labuladong算法小抄 两数之和(8.5) 初始化数组:int[]num=newint<length>;int[]num={1,2,3,4};其中数组名代表指针变量,故不可以直接将数组名a赋值给数组名b错误的复制:int[]b=a; 数组元素复制:假设数组nums的元素复制到numsSort中:int[]numsSort=(int[])Arrays.copyOf(nums,nums.length)意为为numsSort指向的存储区内开辟nums.length长度的空间,并复制nums 调用Arrays静态类中的方法可以直接操作数组1)数组...

  XlqFCvp7Aw7i   2024年08月12日   33   0   0 Java
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~