数组 算法02 part
day13 代码随想录算法训练营 347. 前 K 个高频元素 【待梳理】
题目:347. 前 K 个高频元素 我的感悟: 我用hash再排序。 卡尔用的小顶堆。 `heapq`是Python中的一个模块,它提供了堆队列(也称优先队列或者堆)的算法实现。在计算机科学中,堆是一种特殊的完全二叉树数据结构,其中每个父节点的值都小于或等于其子节点的值(在最小堆中)或者父节点的值都 ......
day13 代码随想录算法训练营 239. 滑动窗口最大值
题目:239. 滑动窗口最大值 我的感悟: 来难度了,有点意思, 理解难点: 需要实现自定义队列, 看了国外的解题思路和其他的回答,感觉还是卡尔的思路,更有意思。 实现队列: pop只弹出左边边界且左边界为最大值的时候 push 要维护队列里的大到小的单调性。把队尾小的都卷走 front查询最大值 ......
Day02
计算机底层教学 语言 ![](C:\Users\26329\Pictures\Screenshots\屏幕截图 2024-01-08 154140.png) 进制 学习进制的障碍 人类天然地选择10进制 进制的运算 运算的本质是查数 每种进制都有对应的运算体系 二进制 十六进制就是二进制的简写 数据 ......
算法期末复习笔记
分治 基本概念 基本思想 将原始问题分解为若干子问题 逐个解决各个子问题 得到原始问题的解 情况分类 原始问题的解在分解出的子问题中 原始问题的解需要各个子问题的解再经过综合处理得到 如果分解出的子问题和原始问题类型相同,就可以用递归的方法做了 算法示例 查找最大值最小值 O(logn) 二分搜索 ......
KMP 算法
Question: Given two strings needle and haystack, return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haysta ......
git操作-02-分支创建
注意:如果远程有dev分支,本地也需要在dev分支上。如果本地在cc分支,提交到远程dev分支是无效的 一、查看分支 git branch 列出本地已经存在的分支,并且当前分支会用*标记 git branch -r 查看远程版本库的分支列表 git branch -a 查看所有分支列表(包括本地和远 ......
计算器算法
目录思路最简单的计算器(好像也不简单,因为有*/)224772 困难计算器 可以通解224 227 和上面的题 先把力扣上5道计算器的题目干了,主要使用双栈法 思路 用一个栈ops存操作,用一个栈nums存数字 然后从前往后做,对遍历到的字符做分情况讨论: 空格 : 跳过 ( : 直接加入 ops ......
即时通讯技术文集(第31期):IM开发综合技术合集(Part4) [共13篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第31 期。 [- 1 -] IM消息ID技术专题(一):微信的海量IM聊天消息序列号生成实践(算法原理篇) [链接] http://www.52im.net/thread-1998-1-1.h ......
常用容器:动态数组array、列表list、队列 queue、map或字典、 集合、栈等等
一般语言都会提供一些逻辑容器的实现,各个语言的实现方式不同;底层的数学算法应该差不多; # 动态数组, 这个没啥可说的,就是一个数组,满了时候,再创建一个数组,把之前的数组里的数据移过来,销毁之前数组; ......
mysql底层join算法
暴力 Nested-Loop Join 走索引的 index-Nested-Loop Join 缓冲块的 blocked-Nested-Loop Join mysql join 底层实现_mysql join实现算法-CSDN博客 走index loop join ,说明如果联表走主键,就算条件不走 ......
【算法】【线性表】【链表】链表求和
1 题目 给定两个用链表表示的整数,每个节点包含一个数位。 这些数位是反向存放的,也就是个位排在链表首部。 编写函数对这两个整数求和,并用链表形式返回结果。 示例: 输入:(7 -> 1 -> 6) + (5 -> 9 -> 2),即617 + 295 输出:2 -> 1 -> 9,即912 进阶: ......
02_内核架构
宏内核与微内核 宏内核:所有内核代码都编译成一个二进制,所有的内核代码都运行在一个大内核地址空间里,内核代码可以直接访问和调用,效率高且性能好 微内核:把操作系统分成多个独立的功能模块,每个功能模块之间的访问需要通过消息来完成,因此效率没有那么高 宏内核架构优点:设计简洁和性能较好 微内核架构优点: ......
代码随想录算法训练营第二十七天 | 39. 组合总和,40.组合总和II,131.分割回文串
一、39. 组合总和 题目链接: LeetCode 39. 组合总和 学习前: 思路: 无 学习后: 思路: 需要额外定义的成员变量: private List<List<Integer>> res; private List<Integer> list; 调用函数: List<List<Integ ......
ClickHouse的JOIN算法选择逻辑以及auto选项
Setting配置join_algorithm用于指定JOIN算法,它可以设置为多个值,例如join_algorithm='direct,hash,partial_merge'。在选择最终JOIN算法的时候是根据setting配置join_algorithm, 以及JOIN操作的Strictness... ......
javascript数组合并效率对比
1、数组元素量级大而合并次数少时,性能对比: concat() > push() > […array1,…array2] 2、数组元素少但合并次数多时,性能对比: push() > concat() > […array1,…array2] 参考资料:http://www.seozhijia.net/ ......
【算法】【线性表】【数组】只出现一次的数字 II
1 题目 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 示例 1: 输入:nums = [2,2,3,2] 输出:3 示例 2: 输入:nums = ......
浅谈几类线段树、树状数组优化 DP
本文主要介绍几类线段树和树状数组优化动态规划的方法。 本文的理论部分比较简单,所以主要以题目讲解为主。 这是本蒟蒻的第一篇日报,如有问题,请指出,感谢。 Part 0. 前置知识 动态规划 线段树 Part 1. 属性在一个区间的进行转移 这是讨论的是形如 \(f_i=Y(i)+\max\limit ......
Java利用fastjson解析复杂嵌套json字符串、json数组;json字符串转Java对象,json数组转list数组 首先要明白,以 { } 开头的是JSONObject,以 [ ] 开头的是JSONArray,如果本身就是json字符串的格式(即格式类型为String),那就不用转换,直接使用转换方法进行转换。
Java利用fastjson解析复杂嵌套json字符串、json数组;json字符串转Java对象,json数组转list数组 首先要明白,以 { } 开头的是JSONObject,以 [ ] 开头的是JSONArray,如果本身就是json字符串的格式(即格式类型为String),那就不用转换,直 ......
(坚持每天都写算法)算法基础复习part1基础算法1-3
发现了一个不太好的习惯,我写东西不喜欢Tab一下,导致行与行之间有点难区分。 题目: 思路:这道题其实考的就是归并,2可以和3比,也可以和6比,也就是说2是可以被使用多次的。之所以使用归并,是因为单个的2以及单个的3也就是单个的数字可以看成是一个数组(关于这个想法,集合也是通用的),那么就要给数组进 ......
视频智能分析/边缘计算AI智能分析网关V4区域入侵检测算法如何配置?
上图所示是配置好的绘画区域,也可以自定义绘制(点击【检测区域】进行绘制即可),如果不绘制则默认检测整个摄像机的画面,点击保存配置可以将算法保存 ......
day11 代码随想录算法训练营 150. 逆波兰表达式求值
题目:150. 逆波兰表达式求值 我的感悟: 注意int(a/b)是0向截断 比如 -2.3 会得到-2; 比如3.6 会得到3 a//b是向下取整,比如是-2.3 会得到-3;比如3.6 会得到3 主要是负数不同 理解难点: 0向取整注意 注意先弹出的是右边的,(想象二叉树的结构。先弹出的是右边节 ......
Shaply算法
Shapley值归因是一种公平且基于贡献分配权重的算法,它源于博弈论,用于在多因素共同作用产生结果的情况下,精确计算每个因素(或渠道)对总体效果的独特贡献。以下是一个使用具体数据说明Shapley值归因的例子: 假设一个电商平台上有三个广告渠道:邮件营销(M)、社交媒体广告(S)和搜索引擎广告(E) ......
检验算法程序的好坏标准
什么是算法程序? 算法程序通常指的是执行特定算法的计算机程序。要深入理解这个概念,我们可以将其分解为“算法”和“程序”两部分,并探究它们的基本含义。 简而言之:对特定问题求解过程的描述。 算法 (Algorithm): 定义:算法是解决问题的明确步骤序列,它是独立于任何编程语言的,可以用伪代码、流程 ......
一维数组和字符数组
1.一维数组 写一个函数用于打印数组中的每一个元素,注意数组在传递时,元素个数传递不过去,仅传递数组内存首地址,所以sizeof(a)/sizeof(int)的值永远是1,无法算出数组元素真正的个数。 可以单步调试观察内存中变量值的变化。原理是编译器在编译时,只传递了数组的起始地址,故在子函数中可以 ......
day11 代码随想录算法训练营 1047. 删除字符串中的所有相邻重复项
题目:1047. 删除字符串中的所有相邻重复项 我的感悟: 做过的题,还是有印象的。 本身也不难,独立写出来了。 理解难点: 代码难点: 代码示例: class Solution: def removeDuplicates(self, s: str) -> str: stack = [] for i ......
02-UPF-Power Domain
How do we use power domain 使用UPF至少有一个power domain power domain可以进行嵌套 Defining Power Domain Example Partitioning Guidelines Scope 没有写scope就是当前design Sc ......
[刷题班] LeetCode448. 找到所有数组中消失的数字
题目描述 思路 原地哈希: 找到数字i时,将位置i-1处的数字翻转为负数 如果位置i-1上的数组已经为负数,则不进行任何操作 再次遍历数组,将数值大于0的元素的下标+1加入到结果集中 方法一: class Solution { public List<Integer> findDisappeared ......
[刷题班] LeetCode442. 数组中重复的数据
题目描述 思路 原地哈希: 利用值域与数组下标空间大小的等同关系,我们可以构造一种对应"关系" 找到数字i时,将位置i-1处的数字翻转为负数 如果位置i-1上的数组已经为负数,则i是出现两次的数字,并将其加入到结果集中 方法一: class Solution { public List<Intege ......
深入理解TF-IDF、BM25算法与BM25变种:揭秘信息检索的核心原理与应用
深入理解TF-IDF、BM25算法与BM25变种:揭秘信息检索的核心原理与应用 1.文本特征表示方法: TF-IDF 在信息检索, 文本挖掘和自然语言处理领域, IF-IDF 这个名字, 从它在 20 世纪 70 年代初被发明, 已名震江湖近半个世纪而不曾衰歇. 它表示的简单性, 应用的有效性, 使 ......