后端
队列的链式表示和实现(链队)
链队:队列的链式表示和实现
相应函数定义
InitQueue(&Q); 构造空队列
DestroyQueue(&Q); 销毁队列
ClearQueue(&S); 清空队列
QueueEmpty(S); 判空.空-TRUE
QueueLength(Q
Golang分析内存溢出
我是一个着迷于产品和运营的技术人,乐于跨界的终身学习者。欢迎关注我的个人公众号「跨界架构师」
每周五11:45 按时送达
我的第「223」篇原创敬上
大家好,我是Z哥。
最近系统在压测过程中发现有一个程序在压力增大后会内存溢出。正好之前自己对 Golang 里分析 dump 这块还没怎么涉及,借此契机学习一下。
网上搜了很多资料,发现 Golang 好像没有手动创建 dump 文件的方式(像
Redis实现高并发扣减库存,秒杀功能(可线上使用)
常见秒杀方案设计:
1.数据库行锁
2.分布式锁+分段锁提升效率
3.Redis单线程机制,将库存放在Redis里面使用
set count 1000
decrby count 1 扣减库存,返回正数就可扣减库存
4.Redis+Lua脚本,查询库存和扣减库存放到Lua脚本里面去执行
这是一个原子操作,解决高并发下线程安全问题
总结:简单利用redis的LUA脚本功能,一次性操作,实现原子性
Java字节码增强探秘
本文转载自 美团技术团队:Java字节码增强探秘
一、字节码
1.1 什么是字节码
Java之所以可以“一次编译,到处运行”,一是因为JVM针对各种操作系统、平台都进行了定制,二是因为无论在什么平台,都可以编译生成固定格式的字节码(.class文件)供JVM使用。因此,也可以看出字节码对于Java生态的重要性。之所以被称之为字节码,是因为字节码文件由十六进制值组成,而JVM以两个十六进制值为一组,
图解LeetCode——792. 匹配子序列的单词数(难度:中等)
一、题目
给定字符串 s 和字符串数组 words, 返回 words[i] 中是s的子序列的单词个数 。
字符串的 子序列 是从原始字符串中生成的新字符串,可以从中删去一些字符(可以是none),而不改变其余字符的相对顺序。
例如, “ace” 是 “abcde” 的子序列。
二、示例
2.1> 示例 1:
【输入】 s = "abcde", words = ["a","bb","
基于深度学习的DDN图像去雨算法实战准备指南
一、DDN图像去雨算法的复现代码下载
1、DDN的图像去雨算法的代码分为tensorflow版本和matlab版本,下载的链接分别如下:
(1)DDN-tensorflow下载
(2)DDN-matlab下载
Jsp技术入门指南【十】IDEA 开发环境下实现 MySQL 数据在 JSP 页面的可视化展示,实现前后端交互
Jsp技术入门指南【十】IDEA 开发环境下实现 MySQL 数据在 JSP 页面的可视化展示,实现前后端交互
前言
一、JDBC 核心接口和类:数据库连接的“工具箱”
1. 常用的 2 个“关键类”
2. 必须掌握的 5 个“核心接口”
二、创建 JDBC 程序的步骤
1. 第一步:加载数据库驱动
2. 第二步:
用度量思想来解释线,面,体的度量
用度量思想来解释线、面和体的度量,首先就要了解度量思想,度量思想一共分为三步:
①发明一个单位。
②沟通单位与被测物之间的关系
③统一单位
这就是度量思想的三步,如果要度量一条线,那么,首先就需要发明一个单位,我这个单位就是一个点,如果要沟通被测物与单位之间的关系,那么就有两种方法,第一种方法就是平移,第二种方法则是拉伸,如果用第一种方法,那么就需要一个点向任意方向直线平移:
我
