说明白计算机网络之TCP的流量控制与拥塞控制之慢开始算法与拥塞避免算法 2024-05-31 算法, 网络, 网络协议, tcp/ip, 计算机网络 116人 已看 因此TCP为每个链接设置了计时器,当一方收到零窗口消息,启动计时器,然后计时器时间到期还没有收到更改窗口大小通知,那么就发送零窗口探测报文段(TCP规定在零窗口情况下也要接收零窗口探测字段,紧急报文段和确认报文段),对方收到后发送现在的窗口值,如果依然是零,那么重新设置计时器。接收到对一个报文段的确认,然后拥塞窗口大小为2,然后发送方可以连续发送两个报文段,接收冯收到后,发回两个确认,然后拥塞窗口大小设置为4。拥塞窗口还可以不断增加,收到一个新的报文段确认后,拥塞窗口最多增加一个SMSS数值。
通俗易懂回溯法求解旅行售货员问题 2024-06-01 算法, java, 数据结构, 开发语言 81人 已看 如果输入的编如果输入的编号不合法,提示用户重新输入,并继续下一次循环。校验两次输入的城市是否相同,提示用户不能输入同个城市,并重新输入。将输入的距离值保存在二维数组disArray的对应位置,同时考虑到距离的无向性,也保存对称位置的值。因此,我们可以在生成路径的过程中,通过比较部分路径的当前距离与已知的最短距离来提前终止一些显然不可能得到更优解的搜索分支,减少搜索空间,提高算法效率。当递归函数返回时,表示当前路径的所有可能性都已探索完毕,此时需要将最后一个添加的城市从路径中移除,以便尝试其他可能性。
多维时序 | Matlab实现SA-BP模拟退火算法优化BP神经网络多变量时间序列预测 2024-05-30 matlab, 算法, 机器学习, 模拟退火算法, 人工智能 97人 已看 多维时序 | Matlab实现SA-BP模拟退火算法优化BP神经网络多变量时间序列预测
力扣 56.合并区间 2024-05-29 算法, java, leetcode, 职场和发展, 数据结构 113人 已看 这道题中,要求合并能合并的区间,并且讲合并之后的结果返回,那么考虑1 2 3哪种情况不能合并,显然是3,即遍历到的区间的开始时间大于结果数组中最后一个区间的结束时间,结果数组中存储的区间已经是把当前便利的区间之前能合并的区间都合并了之后的结果,并且由于初始化的时候就将所有待合并区间按照开始时间从小到大排过序了,所以结果数组中保存的合并之后的区间也是从小到大排序的,自然结果数组中最后一个区间才是唯一有可能和当前数组进行合并的数组。一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。
一致性hash算法原理图和负载均衡原理-urlhash与least_conn案例 2024-05-29 算法, 负载均衡, 运维, 哈希算法 150人 已看 一致性hash算法原理图负载均衡原理-urlhash与least_conn案例
【线性代数】【一】1.2 消元法与方程组的矩阵表示 2024-05-29 算法, 矩阵, 机器学习, 线性代数, 人工智能 173人 已看 本文将先介绍线性方程组求解的一般性方法——消元法。而后再给出矩阵的概念,并给出几个常见的矩阵变换的定义。本文介绍了消元法解线性方程组的一般性步骤,随后引入的矩阵的概念及一些相关的简单定义,最后从矩阵的视角重新分析了消元法的过程,矩阵帮助我们简单的表示、运算、操作方程组,也令我们更直观地观察到方程组的解的几种情况——唯一解、无穷多解、无解。后续我们将继续深入,看看矩阵这一工具还能带来什么更多的好处。
设计模式 之 迭代器模式(Iterator) 2024-05-27 算法, java, 迭代器模式, 设计模式, 开发语言 136人 已看 可以将遍历数据的行为从聚合对象中分离出来,封装在一个被称之为“迭代器”的对象中,由迭代器来提供遍历聚合对象内部数据的行为,这将简化聚合对象的设计,更符合“单一职责原则”的要求。在迭代器模式中只需要用一个不同的迭代器来替换原有迭代器即可改变遍历算法,我们也可以自己定义迭代器的子类以支持新的遍历方式。由于引入了迭代器,在原有的聚合对象中不需要再自行提供数据遍历等方法,这样可以简化聚合类的设计。在迭代器模式中,由于引入了抽象层,增加新的聚合类和迭代器类都很方便,无须修改原有代码,满足 “开闭原则” 的要求。
【算法模板】数据结构:树状数组 2024-05-29 算法, 数据结构 64人 已看 树状数组(Binary Indexed Trees)其基本用途是维护序列的前缀和。对于给定的序列a,我们建立一个数组C,其中c[x]保存序列a的区间[x-lowbit(x)+1,x]中所有数的和。事实上,数组c可以看作一个如下图所示的树形结构,图中最下边一行是N个叶节点(N=16),代表数值a[1~N]。如果N不是2的整次幂,那么树状数组就是一个具有同样性质的森林结构。
代码随想录-算法训练营day55【动态规划16:两个字符串的删除操作、编辑距离、编辑距离总结篇】 2024-05-30 算法, java, 动态规划, 代理模式, 开发语言 213人 已看 代码随想录-算法训练营day55【动态规划16:两个字符串的删除操作、编辑距离、编辑距离总结篇】
代码随想录算法训练营Day6| 242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和 2024-05-29 算法, leetcode, 职场和发展 116人 已看 对于ASCII字符集,字符’a’的Unicode编码是97,字符’b’的编码是98,以此类推,直到字符’z’的编码是122。**关键:**如果map中没有target-nums[i],说明在之前没有出现可以和当前数配对相加为target的数,那么就先把他加进map,等到那个输出现,再将他们的索引成对返回。2.创建一个set集合,存储每一个按照规则算出来的数,一旦出现之前已经加入到set的数了,说明开始循环了,就跳出while,res置为false,这个数不是快乐数。记录字符串s中字符出现的次数。
冒泡排序(经典) 2024-05-30 算法, java, 数据结构, 排序算法, 开发语言 112人 已看 2.i 的初始化为 0,是j的初始化也为 0,注意 j 的终止条件为:j < arr.length - i - 1,是为了防止越界。1.优化的 flag 是为了减少排序次数,如果在一次比较中都没有交换数据,那么这个数组就是有序的。总共由两次循环,外层循环为总共需要比较多少次,一般全部无序的数组,需要比较该数组的长度的值。内层循环,每一次比较需要比较多少次,每一次都比上一次减少一次的次数。我是小辉,24 届毕业生。当下是找工作ing,欢迎关注,持续分享。相邻的两个元素的比较,每次选出一个最大值。
Linux——多线程(三) 2024-06-02 算法, java, linux, 前端, 数据库 38人 已看 在上一篇博客中我们讲到了在加锁过程中,线程竞争锁是自由竞争的,竞争能力强的线程会导致其他线程抢不到锁,访问不了临界资源导致其他线程一直阻塞,造成其它线程的饥饿问题,想要解决此问题又涉及一个新概念。