算法leetcode day 30
算法中的初始化0x3f
写算法的时候,我们常常需要用到设置一个常量用来代表“无穷大”,比如对于int类型的数,有的人会采用INT_MAX,即0x7fffffff作为无穷大。 但是以INT_MAX为无穷大常常面临一个问题,即加一个其他的数会溢出。而这种情况在动态规划,或者其他一些递推的算法中常常出现,很有可能导致算法出问题。 ......
[LeetCode] 1338. Reduce Array Size to The Half 数组大小减半
You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array. Return the minimum ......
day13| 239.滑动窗口最大值;347.前k个高频元素(一刷至少需要理解思路)
239. 滑动窗口最大值 题目简述: 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 思路: 1. 构建两个空列表,一个名为queue,用来存储元素在nums ......
flask_day01
Flask和pythonweb框架介绍 python中的web框架,本质都是一样的 Django:大而全,内置的app多,第三方app也多 Flask:小而精,没有过多的内置组件,只完成web框架最基本的功能,需要借助于第三方,完成更丰富的功能 web.py:是一个小巧灵活的python框架,它简单 ......
算法随想Day53【单调栈】| LC84-柱状图中最大的矩形
int largestRectangleArea(vector& heights) { int result = 0; stack st; heights.insert(heights.begin(), 0); heights.push_back(0); st.push(0); for (int i ......
算法随想Day52【单调栈】| LC503-下一个更大元素Ⅱ、LC42-接雨水
LC503. 下一个更大元素Ⅱ 对于“每日温度”,相当于对nums数组,进行了两次遍历。用i % size所得余数作为下标,且循环的圈数为size * 2 vector<int> nextGreaterElements(vector<int>& nums) { int size = nums.siz ......
算法随想Day51【单调栈】| LC739-每日温度、LC496-下一个更大元素Ⅰ
LC739. 每日温度 vector<int> dailyTemperatures(vector<int>& temperatures) { int size = temperatures.size(); vector<int> result(size, 0); vector<int> sta; s ......
《30天自制操作系统笔记》---第一天
#第一天 ##第一个实验:用二进制写一个显示helloworld的“操作系统” 使用工具: 1、HxD-二进制编辑器 2、qumu模拟器 下载了HxD – 二进制编辑器 编辑好了书上的二进制程序 helloos0.img 然后按照书上写了bat脚本。 Install脚本:用来制作系统启动盘 Run脚 ......
day32(2023.4.1)
1.一对多应答型服务器 随后开启多个客户端,运行结果: 2.一对多聊天服务应用 随后开启多个客户端,运行结果: 3.UDP通信入门案例(创建服务端)了解即可 4.UDP通信入门案例(创建客户端)了解即可 运行结果: day32(2023.4.1)星期六 ......
React 07days
更新流程的步骤: 递:beginWork 归:completeWork beginWork 对于如下结构的reactElement: <A> <B/></A> 当进入A的beginWork时,通过对比B current fiberNode与B reactElement,生成B对应wip fiberN ......
Quine-McCluskey算法简介及其C++代码实现
Algorithm List all minterms (and don't care terms) Step by step merging one layer at a time (note that only two minimum terms with a distance of 1 can ......
中小微企业免费实施,30人以下免费使用一年,数据免费迁移,按需定制
题目:中小微企业免费实施,30人以下免费使用一年,数据免费迁移,按需定制 正文: 您是一位中小微企业的管理者吗?您在寻找一款高效的ERP系统来管理您的业务,但是担心高昂的实施和使用费用?现在,我们向您介绍一款适合您的ERP系统——我们的ERP系统。 我们为您提供免费的实施服务,无需支付任何费用,让您 ......
使用人数不超过30人的中小微企业,我们为您提供了一系列贴心服务ERP
针对使用人数不超过30人的中小微企业,我们为您提供了一系列贴心服务,让您的企业管理更加高效、便捷、节省成本。 免费实施:我们提供免费实施服务,确保您的企业能够快速上手,轻松使用我们的系统。 后付费:我们采用后付费的方式,让您的企业可以在实现管理升级的同时,保持流动资金充足,轻松应对经营压力。 先使用 ......
不超过30人的中小微企业的ERP解决方案
针对使用人数不超过30人的中小微企业,我们为您推出以下的ERP解决方案,以满足您的需求: 免费实施:我们提供免费的实施服务,帮助您将ERP系统快速地部署到您的企业中,省去了繁琐的部署流程和高昂的实施费用。 后付费:我们提供后付费的方式,您可以在使用过程中按需选择功能模块,节省了初期的资金投入,更加灵 ......
机器——算法
上位机(计算机视觉)(AGX) 下位机(单片机)控制具体硬件(STM32) GPIO STM32 基于ARM的32位微控制器 F通用类型 407产品子系列 Z引脚数目:T36 C48 R64 V100 Z144 G闪存存储器容量 实验内容 控制LED灯闪烁 需要具备的能力 单片机编程能力 C/C++ ......
golang蒙特卡洛树算法实现五子棋AI
已经实现蒙特卡洛树算法的通用逻辑,只需要对应结构体实现相关接口就可以直接使用该算法。 优化算法主要优化GetActions生成下一步动作,要尽可能少,去掉无意义的动作。 以及优化ActionPolicy从众多动作挑选比较优秀的动作。对应五子棋就是执行该动作后当前局面评分最高。 package mai ......
day6
1、654 最大二叉树 递归法 构造树一般采用的是前序遍历,因为先构造中间节点,然后递归构造左子树和右子树。 递归三部曲 确定递归函数的参数和返回值 参数传入的是存放元素的数组,返回该数组构造的二叉树的头结点,返回类型是指向节点的指针。 确定终止条件 确定单层递归的逻辑 先要找到数组中最大的值和对应 ......
进程调度算法
1、先来先服务FCFS 非抢占式,按照请求顺序来进行调度。 有利于长作业,不利于短作业,短作业等待时间长。 2、最短作业优先 非抢占式,按照运行时间最短顺序调度。 长作业可能饿死,等待短作业一直得不到运行。 3、最短剩余时间优先 短作业的抢占式版本,按剩余时间调度。 4、时间片轮转 按FCFS原则排 ......
【入门】Go语言排序算法详解
1、冒泡排序 冒泡排序是一种简单的排序算法,它重复地遍历要排序的列表,比较相邻的两个元素,并在必要时交换它们的位置,直到没有任何一对元素需要交换为止。该算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 package main import "fmt" // 我们定义了一个名为`bu ......
【算法专题】容斥原理
【算法专题】容斥原理 题 E. Devu and Flowers https://codeforces.com/contest/451/problem/E 前置知识:隔板法 然后正难则反,把至多取 $a_i$ 个转化为 至少取 $a_i+1$ 的反问题,就能套用隔板法的公式了。 答案即为: #inc ......
Leetcode(剑指offer专项训练)——DP专项(4)
加减的目标值 给定一个正整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 '+' 或 '-' ,然后串联起所有整数,可以构造一个 表达式 : 例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" ......
代码随想录Day17-Leetcode110.平衡二叉树,257. 二叉树的所有路径,404.左叶子之和
110.平衡二叉树 题目链接:https://leetcode.cn/problems/balanced-binary-tree/ 一个显然但似乎不太高效的方法是: 通过递归获取左右子树高度,判断差; 然后递归判断左右结点; 那么一个显然的改进就是后序遍历 /** * Definition for ......
Qt学习笔记9——P30-33. 自定义控件封装,鼠标事件,定时器
P30. 自定义控件封装 P31. Qt中的鼠标事件 P32. 定时器1 P33. 定时器2 P30. 自定义控件封装(创建了新项目) 添加新的界面和类:右键项目的文件夹(顶层的文件)-> Qt——Qt设计师界面类 -> “选择界面模板”选"Widget" -> 在"Class name"中取个类名 ......
递归算法
递归算法 递归算法是一种通过调用自身来解决问题的算法。递归算法通常涉及到将一个问题划分为较小的子问题来解决,并在子问题中调用自身来完成。 递归算法的基本思想是,将一个大问题转化为一个或多个相同结构的小问题,直到问题变得足够小以便直接解决。然后将这些小问题的解组合成原始问题的解。在递归算法中,一个函数 ......
day11| 20.有效的括号;150.逆波兰表达式求值;1047.删除字符串中的所有相邻重复项
20. 有效的括号 题目简述: 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。 思路: 1. 利用一个栈实现 2. 构建 ......
3月30日课后总结
3/30课后总结 线程理论 """ 进程只是一个过程,不会实际做事,做事的是线程。我们需要开启一个进程在进程里面开启线程,进程里至少有一个线程,可以有多个线程 """ # 进程是资源分配的基本单位,线程是CPU执行的最小单位 # 当进程中只有一个线程的时候,这个线程叫主线程这个线程可以开启多个子线程 ......
day03
剑指 Offer 05. 替换空格 传送门 题意 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 分析 代码实现 public String replaceSpace(String s) { StringBuilder sb = new StringBuilder(); for(int ......
算法导论-第2章-算法基础
第2章 算法基础 2.1 插入排序(Insertion sort) 输入:$n$个数的序列$<a_1,a_2,\cdots,a_n>$ 输出:输入序列的一个排列$<a_1^{'},a_2^{'},\cdots,a_n^{'}>$,满足$a_1^{'} \le a_2^{'} \le \cdots \ ......
算法导论-第1章-算法在计算中的作用
第1章 算法在计算中的作用 1.1 算法(Algorithms) 非形式地说,算法(algorithm)是任何明确定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或某个值的集合作为输出。因此算法就是将输入转换为输出的一系列计算步骤。 Informally, an algorithm is ......