自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 问答 (1)
  • 收藏
  • 关注

转载 Local branching(邻域分支)

参考文献:Fischetti, M., & Lodi, A. (2003). Local branching. Mathematical programming, 98(1), 23-47.与local search思想相近,都是基于邻域的思想来进行搜索。

2023-05-24 16:06:02 241

原创 三元组表的快速转置算法

当我们在存储稀疏矩阵的时候(稀疏矩阵:矩阵中只包含有极少数的非0元素),由于稀疏矩阵只有少量关键元素(就是非0元素),我们将整个稀疏矩阵全部存储是十分浪费存储空间的,如何跳过这些非0元素,只存储关键元素以节约存储空间呢?这个时候,三元组表就出现了。三元组表保存关键数据在稀疏矩阵中的位置,以及元素的信息。

2022-11-11 13:16:17 5991 3

原创 数据结构:常见算法的时间复杂度汇总

插入时间为O(1),总时间复杂度为O(n)类似先序遍历O(n^2)无向图O(|V|+2|E|),有向图O(|V|+|E|)O(|V|+|E|)注:普利姆算法不依赖E,适合求解边稠密图的最小生成树;克鲁斯卡尔适合边稀疏而顶点较多的图平均=(ASL成功+ASL不成功)/2。

2022-11-02 20:02:02 9691 5

原创 【力扣每日一题】1620.网络信号最好的坐标

数组 towers 中包含一些网络信号塔,其中 towers[i] = [xi, yi, qi] 表示第 i 个网络信号塔的坐标是 (xi, yi) 且信号强度参数为 qi。如果一个坐标跟塔的距离在 radius 以内,那么该塔的信号可以到达该坐标。如果第 i 个塔能到达 (x, y) ,那么该塔在此处的信号为 ⌊qi / (1 + d)⌋ ,其中 d 是塔跟此坐标的距离。一个坐标的 信号强度 是所有 能到达 该坐标的塔的信号强度之和。如果有多个坐标网络信号一样大,请你返回字典序最小的 非负 坐标。

2022-11-02 15:21:54 270

原创 【力扣每日一题】1662.检查两个字符串数组是否相等

给你两个字符串数组 word1 和 word2。如果两个数组表示的字符串相同,返回 true;否则,返回 false。数组表示的字符串 是由数组中的所有元素 按顺序 连接形成的字符串。

2022-11-01 15:50:02 218 2

原创 【力扣每日一题】481.神奇字符串

如果将 s 中连续的若干 1 和 2 进行分组,可以得到 “1 22 11 2 1 22 1 22 11 2 11 22 …每组中 1 或者 2 的出现次数分别是 “1 2 2 1 1 2 1 2 2 1 2 2 …上面的出现次数正是 s 自身。n=5,字符串=“1221121”,插入“1”;n=3,字符串=“12211”,插入“11”;n=4,字符串=“122112”,插入“2”;n=2,字符串=“122”,插入“22”;n=1,字符串=“1”,插入“1”;n=0,字符串=“0”;

2022-10-31 11:04:25 186

原创 【力扣每日一题】784.字母大小写全排列

给定一个字符串 s ,通过将字符串 s 中的每个字母转变大小写,我们可以获得一个新的字符串。返回 所有可能得到的字符串集合。

2022-10-30 13:19:05 141 1

原创 oj赛(第22周)序列

【代码】oj赛(第22周)序列。

2022-10-29 21:09:38 318 2

原创 oj赛(第22周)老式计算器

【代码】oj赛(第22周)老式计算器。

2022-10-29 20:57:15 396 2

原创 Git_零基础实用手册(2)GitHub团队协作

由于GitHub服务器在外国,所以我们访问GitHub网站的时候会很慢甚至进不去,不过我们可以使用FastGitHub加速,FastGithub是一个开源的软件主要为了使GitHub畅通无阻,有超大量的IP资源、快速的IP检测功能,以及微小的宽带占用,智能的DNS设置,并且支持多平台和加速GitHub的其它域名。FastGithub网址:http://dedeapps.com/dotnetcore/FastGithub,进入官网下载即可使用。或者使用油猴脚本,直接搜索FastGithub即可。创建完成后

2022-10-28 21:54:46 449 1

原创 Git_零基础实用手册(1)Git常用命令

在版本控制中,同时推进多个任务,我们可以为每个任务创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。

2022-10-28 20:11:13 100

原创 【力扣每日一题】1822.数组元素积的符号

于是可以换种思路,因为最终返回的结果只与连乘之后的符号有关,那可以在每次循环相乘的时候,只保留结果的符号,让结果只存在-1,1,0这三个数,问题就能够得到解决,当然,定义一个记录负数个数的值,最后判断这个值是奇数还是偶数来返回结果,这种方法也是可以的。:根据题目要求,首先想到的是将数组循环连乘,得到的总数判断是否大于0,小于0,或者等于0,但是提交后会发现会越界。返回 signFunc(product)。如果 x 是等于 0 ,返回 0。如果 x 是负数,返回 -1。如果 x 是正数,返回 1。

2022-10-27 12:47:22 219

原创 【力扣每日一题】934.最短的桥

确定第一个岛屿范围后,我们将第一个岛屿的边界不断向外扩张,并同样标记,一层一层扩张下去,直到扩张到第二个岛屿,那么扩张的层数即是最短桥的长度,这个不断扩张的过程刚好用到的是广度优先方法。算法思想的主要流程是:先找到第一个岛屿的范围,并把这个岛屿范围内的值全部标记(如标记-1),这个过程可以用到深度优先方法。岛 是由四面相连的 1 形成的一个最大组,即不会与非组内的任何其他 1 相连。给你一个大小为 n x n 的二元矩阵 grid ,其中 1 表示陆地,0 表示水域。返回必须翻转的 0 的最小数目。

2022-10-25 15:26:06 189

原创 【力扣每日一题】915.分割数组

因此,不妨先找到数组最大值和最小值的位置,同时,找到最小值位置之前的最大值,和最大值位置之后的最小值(有点绕,好好理解)。例如示例1,最小值是0,最大值是8, 最小值之前的最大值是5,最大值之后的最小值是6。然后,在最小值和最大值位置之间,我们利用类似快速排序算法的方式,分别向左和向右遍历,知道两个遍历指针相邻,则找到分割数组的位置。1.分割数组的那个位置一定在整个数组的最小值和最大值之间。3.left数组的最大值总是比right数组的最小值要小。用的方法比较笨,没有优化,有更好的方法欢迎补充。

2022-10-24 16:39:55 583

原创 【力扣每日一题】1768.交替合并字符串

给你两个字符串 word1 和 word2。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。这是典型的归并问题,利用双指针,分别指向两个待合并的字符串,循环合并到新字符串,直到有一个字符串遍历完毕,然后再将未遍历完的字符串继续遍历完即可。

2022-10-23 11:43:13 233

原创 openMPI在Linux环境下的安装和部署

CentOS7环境下openmp的安装和部署

2022-10-12 23:00:45 5021 1

原创 【openmp】利用openmp实现蒙特卡洛方法计算pi

【openmp】利用openmp实现蒙特卡洛方法计算pi。

2022-10-03 09:32:42 1222

原创 SpringBoot+Vue实现OSS客户端签名后web端直传

上传慢用户数据需先上传到应用服务器,之后再上传到OSS,网络传输时间比直传到OSS多一倍。阿里云提供了三种优化方案,本篇文章主要介绍第三种方案,即使用表单上传方式将文件上传到OSS利用OSS提供的PostObject接口,通过表单上传的方式将文件上传到OSS。这种方式不同于传统的将文件上传到服务器,再通过服务器上传至云的方式,并且key和id也没有直接暴露在前端,提高了响应速度的同时也保证了数据的安全性。具体流程如下图所示。由于OSS上行流量是免费的,如果数据直传到OSS,将节省多台应用服务器的费用。...

2022-07-22 22:45:11 1089 1

原创 [Python爬虫]爬虫性能优化-线程池

线程池的概念是非常简单的,无非就是创建一批线程,之后就不再释放了,有任务就提交给这些线程处理,因此无需频繁的创建、销毁线程,同时由于线程池中的线程个数通常是固定的,也不会消耗过多的内存,因此这里的思想就是复用、可控。...

2022-07-10 15:31:53 441 1

原创 【Python爬虫】个人学习笔记

使用方式requests模块主要用来模拟浏览器发送HTTP 请求,每次调用 requests 请求之后,会返回一个 response 对象,该对象包含了具体的响应信息。request方法delete(url, args) 发送 DELETE 请求到指定 urlget(url, params, args) 发送 GET 请求到指定 urlhead(url, args) 发送 HEAD 请求到指定 urlpatch(url, data, args) 发送 PATCH 请求到指定 urlpost(u

2022-07-09 22:51:13 172

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除