快乐的程序员
如何判断两个链表是否相交 如何判断两个链表是否相交
算法题:判断2个链表相交面试中可能会问到的算法题,今天总结一下 方法一:map步骤: 1.遍历list1,以节点为key放入map中 2.遍历list2,判断每个节点是否在map中,如果在则相交,且顶一个存在的节点是交点 // 定义链表
2024-03-13
堆排序原来如此简单 堆排序原来如此简单
写在前面之前总觉得堆排序很难,今天写算法题的时候用到了排序,就搜了一下相关排序算法,看了一下之前觉得比较难的快速排序和堆排序,毕竟工作时间久了,理解能力也有了一定的提升,觉得这两个算法逻辑和实现都不难,于是在理解了算法逻辑之后写了这2个算法
2024-03-13
快速排序算法 快速排序算法
写在前面今天在写leetcode算法题6316. 重排数组以得到最大前缀分数的时候,总是超时,最后看别人的解答,发现思路是差不多的,先排序,然后遍历求和。 仔细看别人的代码,排序使用的是python语言自带的sort函数。唯一的区
2024-03-13
分布式数据库中间件TDDL是什么 分布式数据库中间件TDDL是什么
写在前面Tddl是一个分布式数据库中间件,它在阿里内部被广泛的使用,主要是为了解决分布式数据库产生的相关问题,分布式数据库与数据库中间件息息相关 演变历史1)TDDL 2.0 (2009~2011) 第一个流行版本 2)TDDL 3.1 (
当需要生成大量的全局唯一ID怎么办 当需要生成大量的全局唯一ID怎么办
业务场景当某个请求需要获取大量全局唯一ID怎么办?比如导入数据。 这个时候肯定不能循环调用ID生成服务去去单个获取 方案一:批量获取比如需要获取2万个id,则调用批量接口一次性获取2万个id。这是一种方法,但是ID生成器服务一次性生成2万个
2024-03-13
蓄水池抽样算法 蓄水池抽样算法
写在前面面试的时候可能会这样的算法题:从无限的字符流中, 随机选出 10 个字符 相同的问题还有: 1.给定一个数据流,数据流长度N很大,且N直到处理完所有数据之前都不可知,请问如何在只遍历一遍数据(O(N))的情况下,能够随机选取出m个不
2024-03-13
面试题:给一个数字n,请你用2个线程分别输出奇数和偶数,要求最终输出顺序是递增的 面试题:给一个数字n,请你用2个线程分别输出奇数和偶数,要求最终输出顺序是递增的
题目描述请你用你熟悉的语言,实现:给一个数字n,用2个线程分别输出1,3,5,7,9,…和2,4,6,8,10,…,一直到n,但最终输出的结果是1,2,3,4,5,6,7,8,9,10,…,n 示例n=100 结果:1,2,3,…,99,1
2024-03-13
GO 函数内部能改变数组元素吗 GO 函数内部能改变数组元素吗
写在前面很多人对数组和切片以及函数参数理解不够深刻。今天就来讲一讲 数组和切片go中数组类型包括元素数量,即 [1]int,[2]int,[3]int这是3个不同的数据类型。 切面底层是指向一个数组的结构体,并且数组的大小、地址可能会发生变
2024-03-13
从零搭建一个网站 从零搭建一个网站
写在前面最近老丈人叫我帮他做个官网,老婆家里是生产地坪漆的,自己的工厂生产,然后销售到各个代理点、工地等等。 于是就有了从零开始,搭建一个网站。 买云服务器、域名、备案我买的是腾讯云,挺贵的,450一年。 买了一个域名,并且备案好。由于是企
2024-03-13
如何实现大数求组合 如何实现大数求组合
C(10000,3) 如何实现n个互不相同的数的全排列是n!个。 一个有n个元素的集合的含有m个元素子集的个数为C(n,m)。 C(n,m)的计算方式: 1.公式:C(n,m) = n!/((n-m)! * m!),在算法上较难实现,阶乘很
2024-03-13
架构 秒杀系统优化思路 架构 秒杀系统优化思路
写在前面秒杀系统是经常需要优化的系统,对架构设计要求很高,面试过程中也经常问到,今天就来系统学习一下如何优化秒杀系统 秒杀场景 每个人都读自己的数据:im系统,如qq,微博 一个人读多个人的数据:微博关注人的动态、微信朋友圈动态、抖音关注的
2024-03-13
数据库设计规范 数据库设计规范
基础规范(1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用utf8mb4字符集 解读:万国码,无需转码,无乱码风险 (3)数据表、数据字段必须加入中文注释 解读
2024-03-13
13 / 22