类型 数据java day
Java基础 等待唤醒机制(阻塞队列方式实现)
等待唤醒机制还可以用 阻塞队列的方式进行实现 练习:利用阻塞队列完成生产者和消费者(等待唤醒机制)的代码 细节:生产者和消费者必须使用同一个阻塞队列 阻塞队列的创建方式(泛型:队列里面数据的类型):ArrayBlockingQueue<String> queue = new ArrayBlockin ......
手撕Vuex-实现共享数据
经过上一篇章介绍,完成了添加全局 $store,接下来就是实现共享数据的功能。 在 Vuex 中,共享数据是通过 state 来实现的,所以我们需要在 Nuex.js 文件中实现 state 的功能。 在 Vuex 中,state 是一个对象,这个对象中存放的就是我们的共享数据,所以我们需要在 Nu ......
mysql大批量删除数据,工作记录
在10万记录的三张关系表中删除相对应的数据,三张表为层级嵌套关系 优化查询 目的:减少mysql数据库慢查询导致的长时间占据锁的情况出现 优化方向:将慢sql改为多次执行的快sql,避免长时间占用mysql资源情况出现 多表查询会用到的几种方式 连表查询 SELECT event_data.id F ......
数据结构与算法(LeetCode) 第二节 链表结构、栈、队列、递归行为、哈希表和有序表
一、链表结构 1.单向链表节点结构 public class Node{ public int value; public Node next; public Node(int data){ value=data; } } 2.双向链表节点结构 public class DoubleNode{ pu ......
数据结构与算法(LeetCode)第一节:认识复杂度,对数器,二分法与异或运算
一、认识复杂度 1.评估算法优劣的核心指标: 时间复杂度:当完成了表达式的建立,只要把最高阶项留下即可。低阶项都去掉,高阶项的系数也去掉,记为O(去掉系数的高阶项); 时间复杂度是衡量算法流程的复杂度的一种指标,该指标只与数据量有关,与过程之外的优化无关 常见的时间复杂度(从好到坏) O(1) ......
Java基础 Java 为什么非要在 锁对象身上调用 wait()方法 和 notifyAll()方法
在Java中,wait()和notify()方法必须在同步块或同步方法内部使用,通常在锁对象上调用,有以下原因: 1.互斥性: 当你在同步块内部使用wait()和notify()方法时,它们与锁对象紧密相关,确保在调用wait()和notify()时能够维持互斥性。这意味着在调用wait()时,当前 ......
Java基础 什么是生产者和消费者
在Java中,"生产者-消费者"(Producer-Consumer)是一种常见的并发编程模型,用于协调多个线程之间的工作,其中一些线程充当生产者,而其他线程充当消费者。这模型通常用于处理共享数据的情况,其中生产者线程生成数据并将其放入共享缓冲区,而消费者线程则从缓冲区中取出数据并进行处理。主要特点 ......
Java基础 等待唤醒机制——生产者代码实现
package pojo.xc01;public class Cook extends Thread{ @Override public void run() { while (true) { synchronized (Desk.lock) { if (Desk.count == 0) break ......
[考研] 数据结构
针对数据结构的部分学习笔记。 栈 出栈排列个数:\(C_{2n}^n\),卡特兰数 栈模拟 中缀转后缀 原理: 中缀转后缀的原理是单调栈(维护一个优先级递增的栈),从栈底到栈顶的优先级必然递增,输出时可以保证优先级高的先输出(出栈)。中缀表达式和后缀表达式的不同仅在于符号位置不同,数字之间相对顺序是 ......
Java基础 等待唤醒机制——消费者代码实现
等待唤醒机制的三个角色:生产者、消费者、控制生产者和消费者的第三者 代码: package pojo.xc01;//用来控制生产者和消费者的执行public class Desk { //桌子上是否有面条(0:没有面条 1:有面条) //用布尔类型表示的话有一个小弊端,因为布尔类型只有两个值,只能控 ......
java——redis随笔——实战——优惠券秒杀
黑马视频地址:https://www.bilibili.com/video/BV1cr4y1671t?p=49&spm_id_from=pageDriver&vd_source=79bbd5b76bfd74c2ef1501653cee29d6 csdn地址:https://blog.csdn.net ......
Java基础 当某一个线程执行代码时发现锁已经被锁住了,该线程会怎么样?
当一个线程尝试获取一个已经被其他线程锁住的锁时,它的行为取决于所使用的编程语言和锁的类型。一般情况下,有以下几种可能的行为: 1.阻塞等待:线程会被阻塞,直到锁变为可用。这是最常见的情况,通常用于互斥锁。在Java中,可以使用synchronized关键字或ReentrantLock类来实现这种行为 ......
2023数据采集与融合技术实践作业3
作业①: 要求: 指定一个网站,爬取这个网站中的所有的所有图片,例如:中国气象网(http://www.weather.com.cn)。使用scrapy框架分别实现单线程和多线程的方式爬取。 –务必控制总页数(学号尾数2位)、总下载的图片数量(尾数后3位)等限制爬取的措施。 Gitee链接: htt ......
loj2737. 「JOISC 2016 Day 3」电报
最终形态一定是 \(n\) 个点形成的一个大环。 故每个点的入度一定为 \(1\),我们考虑保留每个点入度中 \(c_i\) 最大的边,剩下的删除,此时原图一定变成一堆链加一些环。 对于环,我们是需要拆开的,此时我们可以枚举环上每个点,考虑将其反悔,反悔代价为环边代价减去其次大入边(最大入边一定为环 ......
P8820 [CSP-S 2022] 数据传输
已经知道坑点的情况下暴力+正解 想+写还是用了 2h……调试速度太慢了。 所以场上如果想多肝出一道题的话,简单题必须在 10min~40min 结束战斗啊! 以及对于这种数据范围小到一眼就需要分类讨论的题目,一定要多思考不同数据下的差异。 \(k\le 2\) 时不难想到对于每次询问朴素 dp,此时 ......
西北电专大二电院_数据结构上机报告记录_第二次上机报告
第二次上机报告 只要求提交了顺序串和顺序栈的基本操作的实现,这里把剩下两个也补充上去 顺序栈——进制转换 1. 问题描述 本程序基于栈功能实现一个进制转换程序。(用顺序栈完成此题) InitStack()函数用于构造一个空栈; StackEmpty()函数用于判断栈是不是空栈; Push()函数实现 ......
Java中的Set集合
Set集合的特点:不能存储相同元素。 Set接口两大实现(常用):HashSet TreeSet Set是一个抽象接口,不能对Set进行实例化。 (Set set = new Set(); )错误 该接口主要继承于Collection接口,所以具有Collection的一些常见的方法。 1.add( ......
西北电专大二电院_数据结构上机报告记录_第一次上机报告
数据结构是最近纳入电院的必修主课,但是其期末考核是笔试形式(,日常有上机安排。 这门课还是需要一定的课后上机练习和调试来增加对其的认识程度、发现自己欠缺的知识、可能犯下的错误,包括但不限于语法等 这里主要收录几次上机安排的报告和自己的答案,作为记录 第一次上机 问题一:顺序表的合并 1.问题描述: ......
你知道Java21中的顺序集合吗?
在Java 21中,处理集合的方式得到了改进,因为三个新的接口已经融入了现有的类型层次结构。这些顺序集合为我们提供了一个统一的API来访问第一个和最后一个元素,并以相反的顺序处理集合。 为了更好地理解顺序集合是什么,让我们回顾一下集合之前的样子。 Java集合框架在Java 1.2中引入的Colle ......
Vue.js框架:vue3引入mockjs模拟数据调试
一、引入依赖 1、安装依赖包 在终端中使用以下命令: npm install @types/mockjs --save 此处使用了@types进行引入,是因为在.ts文件引用包时,默认必须有类型声明,不能是any。 有很多依赖包是用纯JS写的,没有类型声明。 因此使用@types作为类型声明的集中仓 ......
C#读取记事本,里面有600万条数据,放入数组时:System.OutOfMemoryException
原因:使用文件流,然后读取文件内容,再解析的时候,会报内存溢出 处理办法:使用/n分隔 /// <summary> /// 通过记事本,获取CRM所有客户的某个字段 /// </summary> /// <returns></returns> public static List<string> G ......
Java 垃圾回收机制
目录垃圾回收的基础知识堆空间的基本结构内存分配和回收原则对象优先在 Eden 区分配大对象直接进入老年代长期存活的对象将进入老年代GC 分类对象是否可被回收引用计数算法可达性分析算法引用类型强引用(StrongReference)软引用(SoftReference)弱引用(WeakReference ......
数据采集与融合技术实践作业三
第三次作业 Gitee链接 作业①: 要求: 指定一个网站,爬取这个网站中的所有的所有图片,例如:中国气象网(http://www.weather.com.cn)。使用scrapy框架分别实现单线程和多线程的方式爬取。 –务必控制总页数(学号尾数2位)、总下载的图片数量(尾数后3位)等限制爬取的措施 ......
BootstrapBlazor组件库,Table组件导出数据到剪切板
BootstrapBlazor组件库,Table组件导出数据到剪切板 解决方案 使用ClipboardService将Table数据导出到剪切板中,并且可以直接粘贴到Excel。 这里我直接采用ExportButtonDropdownTemplate添加了2个新的导出选项,一个是导出当前页,一个是导 ......
java redis 短信业务应用
java redis 短信业务应用 短信业务场景:根据实际业务来通知客户,在短信的MQ中新增字段:是否需要发送短信的标识,短信微服务可以接收到MQ后根据该字段来判断是否发送。 如果发送端MQ的事件的操作是分开的,比如步骤1:修改订单, 步骤2:产生修改后的费用去支付,在支付成功之后才发送该MQ消息。 ......
json 对象属性的输出顺序测试,fastJson 有序,jackson,gson无序(需代码中人工按约定来编码)接口数据签名规则
json 对象属性的输出顺序测试,fastJson 有序,jackson,gson无序(需代码中人工按约定来编码)接口数据签名规则 fastJson会根据对象的字段的首字母来排序。而jackson,gson是根据对象的类中定义的属性的代码中的先后顺序输出。不会排序。 针对业务场景需要对接口中对象存在 ......
教你找回 git stash 数据中的数据
由于不正确的 git 命令,他把保存在 stash 中的更改删除了。在这悲伤的情节之后,我们试图寻找一种恢复他所做工作的方法,而且我们做到了!首先警告一下:当你在实现一个大功能时,请将它分成小块并定期提交。长时间工作而不做提交并不是一个好习惯。下面就演示一下怎样从 stash 中恢复误删的更改。更多... ......