会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
xiaojiangs
博客园
首页
管理
2023年5月24日
LeetCode 155. 最小栈 - 思考与最优解
摘要: ## 分析 [题目链接](https://leetcode.cn/problems/min-stack/) **栈**是一种**先进后出**的数据结构,对于栈来说,如果一个元素 `a` 在入栈时,栈里有其它的元素 `b, c, d`,那么无论这个栈在之后经历了什么操作,只要 `a` 在栈中,`b,
阅读全文
posted @ 2023-05-24 22:46 秊
阅读(132)
评论(0)
推荐(0)
2023年5月19日
数据结构总结(待补充)
摘要: # 跳表 ## 由来 二分查找算法的底层依赖是数组的随机访问特性, 所以只能用数组来实现. 但如果数据存储在链表中, 对其稍加改造, 其实也是可以用二分查找的 ## 特性 是各方面都优秀的动态数据结构, 可以支持快速的插入, 删除, 查找操作; 且实现相比于红黑树简单, 甚至某些场合可以代替红黑树
阅读全文
posted @ 2023-05-19 18:21 秊
阅读(15)
评论(0)
推荐(0)
2023年4月21日
a < b 与 a - b < 0
摘要: 在查看集合源码时, 发现许多地方都用到了 a - b < 0, 并注释了 overfolw-conscious code 如: // overflow-conscious code if (minCapacity - elementData.length > 0) grow(minCapacity)
阅读全文
posted @ 2023-04-21 21:35 秊
阅读(30)
评论(0)
推荐(0)
2023年4月19日
ChatGPT api 启用 stream 返回时,无法统计 token 的解决思路
摘要: 在使用 ChatGPT 的 Create chat completion (长对话) 接口中,若不启用 stream 选项,接口返回的格式为: { "id": "chatcmpl-123", "object": "chat.completion", "created": 1677652288, "c
阅读全文
posted @ 2023-04-19 18:27 秊
阅读(1367)
评论(0)
推荐(0)
关于 Integer 缓存池中的 IntegerCache
摘要: 以下摘自源码: Oracle OpenJDK version 1.8.0_331 Cache to support the object identity semantics of autoboxing for values between -128 and 127 (inclusive) as r
阅读全文
posted @ 2023-04-19 16:19 秊
阅读(49)
评论(0)
推荐(0)
2023年4月16日
可重入锁的引入:不可重入锁中的死锁问题
摘要: 本文尝试给出《Java 并发编程实战》2.3.2 节中提到的 “如果内置锁不是可重入的,那么示例代码将会发生死锁” 的一种具体实现。 重入锁(ReentrantLock),顾名思义,就是支持重复进入的锁,它表示该锁能够支持同一个线程对一个资源的重复加锁。也就是说,如果某个线程试图获得一个已经由它自己
阅读全文
posted @ 2023-04-16 18:49 秊
阅读(270)
评论(0)
推荐(0)
公告