Java实现单链表反转
public class Test {
class Node {
Node next;
int data;
protected Node(int data) {
this.data = data;
}
}
/**
* 构建单链表
*
* @param nums
* @return
*/
private Node crea
Java四种锁及分布式锁的初解【纯转】
一:分类 (1)宏观 乐观锁 乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(比较跟拿数据时的版本号,如果一样则更新,版本号+1)。 java中的乐观锁基本都是通过CAS操作实现的,CAS是一种更新的原子操作,比较当前值跟传入值是否一样,一样则更新,否则失败。 CAS--Compare And Swap 比较并交换--通过比较传入
Codeforces 1231E Middle-Out 题解
博客观赏效果更佳 题意简述 (\(q\) 组数据)你有两个串,\(s\) 和 \(t\),长度都是 \(n\)。现在你可以对 \(s\) 做若干次操作:选择某一个字符,把它移到最前面或者最后面(二选一)。 你现在要把 \(s\) 变成 \(t\),请问最少需要多少步操作。不行输出 \(-1\)。 \(1\le q,n\le100\)。 思路 先放结论:求出最长的串 \(a\) 使得 \(a\) 是 \(s\) 的子序列(不一定连续),并且是 \(t\) 的子串(必须连续),答案是 \(n-|a
000、常见算法解析
01、按照内存对齐,重新计算结构体长度 1 const (
2 maxAlign = 8 //按照8个byte进行内存对齐
3 hchanSize = unsafe.Sizeof(hchan{}) + uintptr(-int(unsafe.Sizeof(hchan{}))&(maxAlign-1))//重新计算hchan的size,且内存对齐
4 debugChan = false
5 )
leetcode刷题记录——链表
使用java实现链表 单向链表 双向链表 单向循环链表 双向循环链表 题目记录 160.相交链表 例如以下示例中 A 和 B 两个链表相交于 c1: A: a1 → a2
↘
c1 → c2 → c3
↗
B: b1 → b2 → b3Copy to clipboardErrorCopied 但是不会出现以下相交的情况,因为每个节点只有一个 nex
[每日一题]:B. Phoenix and Beauty
题目: 题目大意: 给一个数组 A ,有一个 K ,代表子序列的区间大小是 k ,可以向数组 A 中插入元素组成一个新的数组,问
是否可以使得新数组满足 每个 区间大小为 k 的子序列的元素和相同。
考察点: 构造、贪心、思维
侃侃: 构造题是真的不好想啊,这里需要想清楚几个点:
1、如何使得我们构造的数组成为一个常态(即满足所有的测试)
2、构造的新数组中 不同的元素个数 == k
(关于这点刚开始一直没想清楚,之后看到大佬写的才慢慢理解)
如果 不同的元素个数 > k ,我们
Alpha冲刺——Day 8
这个作业属于哪个课程 <2020 春 W 班 (福州大学)> 这个作业要求在哪里 <作业要求> 团队名称 <旗山的骄傲> 这个作业的目标 <Alpha 冲刺> 作业正文 <作业正文> 其他参考文献 <《构建之法》> part.01 昨天进展、存在问题、今天安排 后端 陈浩男 221701412 昨日进展:评论表的基本接口完成了一部分 存在问题:评论的子评论怎么解决 今天安排:完成三张评论表的基本接口加敏感词模块 心得体会:小问题也得花心思,不是那么容易解决的 郑斯彬 221701431 昨日进
plan before start coding
It's difficult to control the time and energy cost in real coding project. As you find a goad and work toward it, there would be a lot of traps in the way. The trap can be bug, new study or research work, wrong direction and weird problem (can't be
什么情况下设置了索引但无法使用 ?
1、以“%”开头的 LIKE 语句,模糊匹配 2、OR 语句前后没有同时使用索引 3、数据类型出现隐式转化(如 varchar 不加单引号的话可能会自动转换为 int 型)
第二阶段作业总结博客
0.前言: 第二阶段作业整体难度较第一阶段要高,主要考察的是类的多态、继承的掌握和使用。但是难点在于正则表达式的使用,掌握正则表达式的使用对于此次作业至关重要,正则表达式可以使对数据的校验代码精简而高效,是解题的关键。 第五次作业三题难度递减,第一题的水文校验及处理是主要的考察点,难度较大。对数据的校验极大彰显了正则表达式使用的优势,由于当时还并没有掌握正则表达式的使用,故解题失败。第二题主要了解一个计算圆周率的方法,对于类的使用要求不多,可用可不用。第三题则考察类的继承和多态,如果对此掌握较
优化数据库的方法 ?
1、选取最适用的字段属性,尽可能减少定义字段宽度,尽量把字段设置 NOTNULL, 例如’省份’、’性别’最好适用 ENUM 2、使用连接(JOIN)来代替子查询 3、适用联合(UNION)来代替手动创建的临时表 4、事务处理 5、锁定表、优化事务处理 6、适用外键,优化锁定表 7、建立索引 8、优化查询语句
跑步日记(最近更新于:2020年5月2日)
目录 前言 2020/5/2 从今天开始(2020/5/1),我又开始了新的“征程”,决心开始练习正念,每天10分钟的正念呼吸,一直到大年三十,通过"正念日记"的方式记录每天的变化; 大年三十那天我会取消加密"正念日记",公布正念的效果,你会在"正念日记"当中见证我的迷茫,我的挣扎、我的痛苦,以及最终的成果; 在以后的每天,我都会在正念日志当中记录的体重变化以及重要的心态变化,"正念日记"是加密的,大年三十才能看哟! 与"正念日记"并行的还有另一篇博文,那就是本篇“跑步日记”,将会记录我的跑步
数据库中的事务是什么?
事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有 操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所 有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作 失败,则事务将回滚,该事务所有操作的影响都将取消。 事务特性: 1、原子性:即不可分割性,事务要么全部被执行,要么就全部不被执行。 2、一致性或可串性。事务的执行使得数据库从一种正确状态转换成另一种正确状 态 3、隔离性。在事务正确提交之前,不允许把该事务对数据的任何改
Pycharm报错 Environment location directory is not empty 解决
新电脑clone项目后发现Project Interpreter无法配置, New environment 选择后无法应用, 鼠标悬停在Location 提示 Environment location directory is not empty . 原因是项目push时, 项目下的venv文件夹也被上传, 当项目自带的环境不可用时, 该文件夹存在导致了Pycharm无法创建新的环境. 解决方法是手动删除项目下venv文件夹后重启Pycharm再配置New environment即可. 重新配
Invalidate metadata 和 Refresh语句有什么区别?各有什么应用场景?
Invalidate metadata 用来清空(重置)元数据,执行完后元数据处于未加载状态。Refresh 用来增量更新元数据,执行完后元数据处于已加载状态。 大部分情况我们推荐用 REFRESH 语句来解决元数据过时的问题,只有以下两种情况需要使用 INVALIDATE METADATA: Hive 中创建的新表在 Impala 中找不到,使用 REFRESH 语句会报错。 HDFS Rebalance 挪动了文件的 block 位置,此时 partition、文件的 mtime 都不变,
7-47 打印选课学生名单 (25分)--桶排
先将所有学生的信息按姓名字典序排序,再根据每个学生选的课程号码分别放入相应链表存储,最后输出每个链表的信息。 1 /*每个课程当做一个桶,桶里面用链表按学生姓名字典序存储学生,最后直接输出每个桶的内容,排序的时候使用头插法*/
2 #include<iostream>
3 #include <map>
4 #include <cstring>
5 #include <algorithm>
6 using namespace std;
7 struct Stu
8 {
9
今日推荐
周排行