【Leetcode刷题】两个非重叠子数组的最大和
题目地址:https://leetcode.cn/problems/maximum-sum-of-two-non-overlapping-subarrays/description/
我的思路
实现比较麻烦,计算复杂
先计算出 firstLen 长度的最大和的子集,再从剩余的数组中计算 secondLen 长度的最大和的子集 ,然后相加
再计算出 secondLen 长度的最大和的子集,再从剩余的数组中计算 firstLen 长度的最大和的子集 ,然后相加
比较两个结果,取最大值
官方思路
动态规划 + 滑动窗口
首先题目给出一个长度为 n 的数组 nums。现在我们需要返回两个长度分别为 firstLen 和 secondLen 的非重叠的子数组的最大和,firstLen+secondLen≤n,其中这两段子数组的前后顺序没有要求。
由于两段子数组的前后顺序没有区别,所以现在不妨设长度为 firstLen 的子数组在长度为 secondLen 的子数组前来计算此时的两段子数组的最大和。首先我们用 nums[i,j] 来表示 nums[i],nums[i+1],…, ...
【Leetcode刷题】最近的房间
题目路径1847. 最近的房间
个人解法
关键点:
排序
TreeSet(二分查找)
数据结构
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100public class ClosestRoom { public int[] closestRoom(int[][] rooms, int[][] queries) { return main(rooms , que); } /** * 满足条件的房间 id * 例子:rooms = [[2,2],[1,2],[3,2]] * queries = [[3,1],[3,3],[5,2]] ...
【Leetcode刷题】K 次乘运算后的最终数组 I
题目路径:3264. K 次乘运算后的最终数组 I
个人解法1234567891011121314151617181920public class Solution { public int[] getFinalState(int[] nums, int k, int multiplier) { for (int i=0;i<k;i++){ fun1(nums,multiplier); } return nums; } // 获取最小值并乘以 multiplier public void fun1(int[] nums, int multiplier) { int index = 0; for (int i = 1; i < nums.length; i++) { if (nums[index] > nums[i]) { i ...
数据库datetime类型的数据查询出来相差8小时
背景说明一个JAVA项目,从MYSQL数据库中查询数据时,发现数据库表中显示的Date类型字段的数据,与查询出来的数据相差8小时
排查过程
查看执行的SQL日志:SQL日志中显示,查询出来的数据与数据库一致
查看接口返回的数据:发现返回的数据与数据库中相差8小时
修复过程
【无效】给数据库连接添加了:serverTimezone=Asia/Shanghai
【无效】在项目的启动类main方法,添加如下的代码:TimeZone.setDefault(TimeZone.getTimeZone(“GMT+8”));
【无效】将Date类型的引入的包从:import java.util.Date; 改成 import java.sql.Date;
【有效】在对应实体类的Date类型的字段添加注解:@JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”, timezone = “GMT+8”)
【有效】使用全局配置: 12spring.jackson.date-format=yyyy-MM-dd HH:mm:ssspring.jackson.time-zone ...
VUE+Element 搭建前端项目
准备工作1231. 安装Nodejs 2. 安装vue: npm install -g @vue/cli
搭建步骤
安装cli-init
1npm i -g @vue/cli-init
初始化项目
1vue init webpack <项目>
运行项目
12cd <项目>npm run dev
安装 cnpm
1npm install -g cnpm --registry=https://registry.npmmirror.com
安装 element-ui 框架
123cnpm i element-ui -Snpm install element-ui
在项目中使用 element-ui
在main.js中引入element组件
12345678910111213141516171819// The Vue build version to load with the `import` command// (runtime-only or standalone) has been set in webpack.base.co ...
利用AI根据SONAR建议修改代码
背景1每次写完代码发现sonar给的建议,有时候比较难理解,一眼看过去,可能还不知道如何修改代码,如果让AI帮忙理解sonar的建议,再根据提供的代码,让AI直接提供修改后的代码
设计过程
访问 sonarQube 服务
获取对应服务Bugs的接口
获取Bugs触发的sonar规则
Bugs接口列表
接口:/api/issues/search?componentKeys={componentKeys}&s=FILE_LINE&resolved=false&types=BUG&ps=100&organization=default-organization&facets=severities%2CsonarsourceSecurity%2Ctypes&additionalFields=_all
其中的 componentKeys 为 你的服务
获取SONAR规则详情
接口:/api/rules/show?key={rule}&organization=default-organization
其中的rule表示触 ...
初次使用Node搭建前端项目
环境搭建1231. 安装Nodejs 2. 安装vue: npm install -g @vue/cli
创建项目创建前端脚手架1npm create vue@latest
运行项目1npm run dev
前端项目框架说明
main.ts1234567891011121314151617// 导入全局样式文件import './assets/main.css'// 导入 Vue 框架的 createApp 函数import { createApp } from 'vue'// 导入根组件 Appimport App from './App.vue'// 导入路由配置import router from './router'// 创建 Vue 应用实例,并挂载到 #app 元素上createApp(App) .use(router) // 使用路由 .mount('#app') // 挂载应用
router/index.ts123456789101 ...
python调用本地ollama部署的模型
使用langchain调用ollama部署的模型12345678from langchain_community.llms import ollamahost = "127.0.0.1"port = "11434"URL_ADDRESS = f"http://{host}:{port}"model = "qwen2.5"llm = ollama.Ollama(model=model, base_url=URL_ADDRESS, temperature=0)res = llm.invoke(message)print(res)
使用requests调用ollama部署的模型123456789101112131415161718192021host = "127.0.0.1"port = "11434"url = f"http://{host}:{port}/api/chat&qu ...
IDEA中无法打开终端
问题描述在IDEA中打开终端,出现如下的错误:
12Cannot open 本地Failed to start [C:\Windows\system32\cmd.exe] in ...
解决办法
禁用注册表键:禁用 terminal.use.conpty.on.windows 注册表键。这是一个临时解决方案,但可能会影响终端的一些功能。
更新到2024.1.1版本或更高版本:如果已经更新到2024.1.1版本或更高版本,可以使用更好的解决方案:
在主菜单中,选择“Help” -> “Edit Custom VM Options”。
添加以下行:1-Dcom.pty4j.windows.disable.bundled.conpty=true
重启IDE。
IDEA异常退出导致项目启动报端口被占用
问题IDEA异常退出导致项目启动报端口被占用
解决办法
打开终端
查询占用端口的进程1netstat -ano | findstr ":<port>"
杀死进程1taskkill /pid <pid> /f
重新启动项目