数据结构与算法

Windows下配置多个Mysql版本

0.前言 当前Windows10下已经安装了MySQL5.5.5版本,配置了开机自启动服务,端口设置为默认3306,也配置了环境变量%MYSQL5_HOME%\bin。现希望通过修改不同的环境变量来使用不同的MySQL版本(MySQL5.7及MySQL8.0) 1.准备工作 下载MySQL5.7版本 下载MyS

详解一次SQL优化

昨天(2022-7-22)上线了我的一个功能,测试环境数据量较小,问题不大,但是上生产之后,直接卡死了,然后就开始了这么一次SQL优化,这里记录一下。 不太方便透露公司的表结构,这里我自己建了几张表,模拟一下就可以了。 肯定有杠精要说表可以不这样设计了,但是事实现在系统就是这样设计的,如果想改动表设计,影响面就太大了(我们急着上线哦)。当然,本文的后面也会给出修改设计的方案,以达到更优解。 1.

Workfine学习体验:事半功倍的灵魂办公工具——数据管理器

众所周知,Workfine是一款易上手、便捷、高效的数字化管理工具,虽然平时大家都在用,也都比较熟悉,但是还有一些隐藏的实用小技巧可能还没有被发现。上节课我们主要讲了数据管理器的【数据类型】【条件格式】以及【间隔色】的设置,满足了大家对于系统操作的便捷性和界面美观度的要求,今天我们来继续学习数据管理器的其他相关内容。 【唯一】 在之前的学习中,我们发现表单中会录入重复的信息内容,很不

使用redis的bitmap实现签到功能

一、签到功能的实现思路 最常规的思路,一般我们会选择每个用户,每天的签到作为一条mysql表的数据,然后一条一条的记录。这种方式的确是可以的,但是它的局限性很大,只能适用于小规模公司的内部系统,人数不多的情况下。 如果是用于普通大众的话,这就将不堪设想。如果有一百万用户,每天签到,一个月,需要存的数据就会有三千万条数据,一年,需要存三亿六千万条数据。这要是用户量再大点,或者使用的时长再长点,这数据

揭开最大子段和问题的神秘面纱:从暴力法到极致优化的算法之旅

最大子段和问题:从暴力法到优化的算法解析 题目链接 题目描述 给出一个长度为 nn 的序列 aa,选出其中连续且非空的一段使得这段和最大。 输入格式 第一行是一个整数,表示序列的长度 n。 第二行有 n 个整数,第 i 个整数表示序列的第 ii 个数字 ai。 输出格式输出一行一个整数表示答案。 输入输出样例输入 #1&#xff

mybaits-plus优雅的实现数据权限

前言 项目使用mybaits-plus,所以在mybaits-plus的基础上增加数据权限的过滤 mybaits-plus自带数据权限支持,但由于系统数据权限相对复杂,通过查看文档发现好像并不适用,且原项目版本低,所以最终还是通过自己的方式实现 数据范围 我们系统相对复杂,比如可以按机构/用户等多种维度过滤,并且可以指定全局和某个特定接口的过滤方式 其实数据范围过滤落地也不过是:数据表的某字段限制

21个MySQL表设计的经验准则

1.命名规范 数据库表名、字段名、索引名等都需要命名规范,可读性高(一般要求用英文),让别人一看命名,就知道这个字段表示什么意思。 比如一个表的账号字段,反例如下: acc_no,1_acc_no,zhanghao 正例: account_no,account_number 表名、字段名必须使用小写字母或者数字,禁止使用数字开头,禁止使用拼音,并且一般不使用英文缩写。 主键索引名为pk_字段

【java-数据结构】七大排序 “华山论剑”:谁才是时间复杂度的王者?,从初学者到高手必备技巧。

我的个人主页 我的专栏: 人工智能领域、java-数据结构、Javase、C语言,希望能帮助到大家!!! 点赞👍收藏❤ 一、引言在计算机编程的世界里,排序算法是基础且至关重要的一部分。不同的排序算法在时间复杂度、空间复杂度和稳定性等方面各有优劣。本文将详细介绍七种常见的排序

MySQL 应用简单说明

1. 文档说明 这里的文档说的是官方的文档,可以在 中找到(以mysql5.7为例) 可以点击右方的按钮进行选择下载相应的文档文件。 2. CentOS7安装MySQL 这里指完全按照上面的文档说明进行安装的方式。 (注:下面的指令都默认使用root账号操作,如果非root 账号,请在前面加上sudo) 下载 相关的 r

必学算法——贪心

目录 前言 一、什么是贪心算法 二、算法原理 三、贪心算法的基本步骤 四、贪心算法的特点 五、优缺点分析 六、适用条件 七、经典应用 七、实例分析 八、经典例题 1.翻硬币 代码题解 2.一键三连 代码题解 3.分开元音字母 九、结语 前言贪心算法是必须掌握的一种基础算法,在一些比较出名的竞赛acm、蓝桥杯,并且在