算法 笔记18

算法基础之高精度总结

高精度算法分类 分类:加、减、乘、除 其中加减乘都适用于两个数都是高精度,除法因为除数是高精度的话不好用整除的方法,所以除法时被除数是高精度,除数是整型。 高精度加减乘除的异同点 加和乘 相同点 需要从低位到高位处理 for(int i=stra.size()-1;i>=0;i--) c.push_ ......
高精 高精度 算法 基础

Android开发笔记[4]-串口控制esp32及使用摄像头

摘要 无需root权限,Android使用串口与esp32通信控制小灯开关;开启Android摄像头预览. 平台信息 Android Studio: Electric Eel | 2022.1.1 Patch 2 Gradle:distributionUrl=https://services.gra ......
串口 摄像头 Android 笔记 esp

算法基础之快速排序

quick_sort方法中如果 i=l,j=r 会死循环的分析 示例代码 void quick_sort(int a[],int l,int r){ if(l>=r) return; int i=l,j=r; //此处设置会导致死循环 int x = num[(l+r)>>1]; while(i<j ......
算法 基础

算法基础之二分查找

原题链接 二分查找中的mid+1和mid-1的问题 二分查找中的边界问题处理不好很容易导致死循环和计算错误的问题,以题目 数的范围为例。 题目大意 ​ 二分查找重复数第一次出现的位置和最后一次出现的位置。 数学含义 ​ 第一次位置即 找到 一个长度最大的 >=X 区间的 左边界 ​ 最后一次位置即 ......
算法 基础

2023-09-23 思源笔记使用分享

# 2023-09-23 思源笔记使用分享 尝试使用 obsidian 等类似的软件,还是存在文档同步的问题,使用思源笔记和阿里云提供的对象存储服务,可以实现低成本的多端笔记同步。思源作为一款开源软件,可以自行实现多端部署,对于程序员群体是一个很不错的选择。 我之前一直使用 wolai 这款笔记软件 ......
笔记 2023 09 23

JS深入学习笔记 - 第三章.变量作用域与内存

1.原始值和引用值 ECMScript变量包含两种不同类型是数据:原始值和引用值。 原始值:最简单的数据。有6中原始值:Undefined、Null、Boolean、Number、String和Symbol。原始值是按值访问。 引用值:由多个值构成的对象。三大引用类型:1.object 2.Arra ......
变量 内存 作用 第三章 笔记

软件设计开发笔记5:QT开发三参数温室气体数据记录软件

最近有一个为三参数温室气体分析仪及其多通道换向阀箱编写数据记录和控制的需求。所以在这一篇中我们就来分析一下如何使用QT实现这一需求。 1、需求分析 虽然说传递过来的需求只有“实现一个三参数温室气体分析仪及其多通道换向阀箱的数据记录和控制”这样一句话,但所有人都清楚实际需求并非表达的那么简单。所以,我 ......
软件 温室 设计开发 气体 参数

关于一些《软件设计模式》的一些基础笔记

![](https://img2023.cnblogs.com/blog/2808014/202309/2808014-20230923135511509-1063314289.jpg) ![](https://img2023.cnblogs.com/blog/2808014/202309/2808... ......
设计模式 模式 基础 笔记 软件

算法训练day8 LeetCode 344

算法训练day8: LeetCode 344.541.151.剑指offer05.58. 344.反转字符串 题目 344. 反转字符串 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { public: void revers ......
算法 LeetCode day8 day 344

9.18

今天上午的工程训练,见识到很多机床,手动的,数控的,物理切割的,电弧和激光切割雕刻的,种类很多,老师的讲解也很有趣,中午学了一些图形化界面操作。下午建民老师上课让做了个出数学题升级版。很难,但还是勉强做出来了,建民老师又布置了关于java web 的课程学习。努力吧。 ......
9.18 18

算法题——定义一个方法自己实现 toBinaryString 方法的效果,将一个十进制整数转成字符串表示的二进制

用除基取余法,不断地除以基数(几进制,基数就是几)得到余数,直到商为0,再将余数倒着拼起来即可。 private static String toBinaryString(int number) { StringBuilder sb = new StringBuilder(); while (tru ......
方法 十进制 二进制 整数 字符串

常用算法模版

常用算法模版 今天学会在 https://godbolt.org/ 看汇编了。顺便卡了下常数,以及简单的(不是)压行。 快读 signed read() { signed num = 0, flag = 1; char ch = getchar(); for (; !isdigit(ch); ch ......
算法 模版 常用

算法题——实现类似parseInt的方法

Scanner sc = new Scanner(System.in);String str = "";while(true){ System.out.println("请输入"); String str1 = sc.nextLine(); if(str1.length() < 1 || str1. ......
算法 parseInt 方法

【算法】字符串

1 反转字符串 题目:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须**原地修改输入数组**、使用 O(1) 的额外空间解决这一问题。 1. 双指针 class Solution: def reverseString(se ......
字符串 算法 字符

Docker 部署 思源笔记

Docker 部署 思源笔记 参考文档: 思源笔记群辉 docker 安装简略版(新手向) - 链滴 (ld246.com) 思源笔记docker部署 - 建站教程 (jiuaidu.com) ‍ 拉取镜像 docker pull b3log/siyuan 运行 docker run --name ......
笔记 Docker

【算法】哈希表

1 哈希表理论基础 1.1 哈希表 哈希表是根据关键码的值而直接进行访问的数据结构。一般哈希表都是用来快速判断一个元素是否出现集合里。 1.2 哈希函数 哈希函数如下图所示,通过hashCode把名字转化为数值,一般hashcode是通过特定编码方式,可以将其他数据格式转化为不同的数值。如果hash ......
算法

网络拥塞控制算法总结-PolyCC

字节跳动在SIGCOMM'23以Poster形式提交了一篇论文《PolyCC: Poly-Algorithmic Congestion Control》,试图将各种拥塞控制算法整合到一个统一的框架里。其理由是近40年来各种渠道发布的各种拥塞控制算法,没有一种算法能解决所有网络场景(不同的应用,不同的 ......
算法 PolyCC 网络

JavaScript实现排序算法

目录前言排序算法冒泡排序选择排序插入排序归并排序快速排序计数排序基数排序 前言 排序算法是《数据结构与算法》中最基本的算法之一,本篇使用JavaScript语言实现各种常见排序算法。 排序算法 冒泡排序 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一 ......
算法 JavaScript

代码随想录算法训练营-动态规划-1|509. 斐波那契数、70. 爬楼梯

509. 斐波那契数 1 class Solution: 2 def fib(self, n: int) -> int: 3 if n <= 2: 4 return n 5 6 prev1, prev2 = 0, 1 7 for _ in range(2, n+1): 8 sum_value = p ......
随想录 训练营 随想 算法 楼梯

【算法】链表

1 链表理论基础 链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。链表的入口节点称为链表的头结点也就是head。 链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址 ......
算法

拉格朗日插值 学习笔记

拉格朗日插值 学习笔记 前言 模拟赛考了,我不会,故学之。 真的好抽象…… 背景 众所周知,用 \(n\) 个点可以确定一个 \(n-1\) 次的多项式,那么应该如何确定呢? 我们不妨考虑这样一个题目(其实就是洛谷模板题):给定 \(n\) 个点 \((x, y)\),要求确定 \(f(x)\)。当 ......
笔记

代码随想录算法训练营day17 | ● 110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404.左叶子之和

110.平衡二叉树 class Solution { public: int getHeight(TreeNode* node){ if(node == NULL) return 0; int leftHeight = getHeight(node->left); if(leftHeight == ......
随想录 之和 训练营 随想 算法

【算法】算法性能分析

1 时间复杂度 1.1 知识点 时间复杂度是一个函数,它定性描述该算法的运行时间。 通常会估算算法的操作单元数量来代表程序消耗的时间。假设算法的问题规模为n,那么操作单元数量便用函数f(n)来表示,随着数据规模n的增大,算法执行时间的增长率和f(n)的增长率相同,这称作为算法的渐近时间复杂度,简称时 ......
算法 性能分析 性能

用户故事与敏捷开发 读书笔记 01

软件需求是一个沟通问题,一旦任何一方在沟通中把持绝对地位,项目就会遭受损失。我们需要一种协同工作的方式,让双方都不占绝对主导地位,共同面对感情用事和办公室政治化的资源分配问题。 什么是用户故事? 每个用户故事代表了一个独立的功能,即用户在一个单一环境中可能做的事情。用户故事描述了对用户有价值的功能, ......
笔记 故事 用户 01

本学期读书笔记计划

本学期读书笔记发布: 用户故事与敏捷开发的读书笔记: 梦断代码 读书笔记 01 2023.9.20 用户故事与敏捷开发读书笔记 01 2023.9.23 用户故事与敏捷开发读书笔记 02 2023.10.2 用户故事与敏捷开发读书笔记 03 2023.10.14 用户故事与敏捷开发读书笔记 04 2 ......
学期 笔记

敏捷软件需求阅读笔记(1)

作者在序中写到:为什么一些产品开发项目达不到预定的经济目标呢?研究表明,80%~85%的项目失败归咎于需求不正确。这也是为什么管理软件需求成为现在整个软件工程行业十分重要的研究方向。 在开发过程中,环境不断在变,竞争对手引入新的产品,客户需求发生演变。这也就说明在开始设计之前开发实际需求工件不可行, ......
需求 笔记 软件

读高性能MySQL(第4版)笔记14_备份与恢复(中)

1. 在线备份 2. 离线备份 2.1. 关闭MySQL做备份是最简单、最安全的 2.2. 所有获取一致性副本的方法中最好的 2.3. 损坏或不一致的风险最小 2.4. 根本不用关心InnoDB缓冲池中的脏页或其他缓存 2.5. 不需要担心数据在尝试备份的过程中被修改 2.5.1. 服务器不对应用提 ......
高性能 备份 笔记 MySQL 14

Eureka 学习笔记

自我保护机制主要在Eureka Client和Eureka Server之间存在网络分区的情况下发挥保护作用,在服务器端和客户端都有对应实现 假设在某种特定的情况下(如网络故障), Eureka Client和Eureka Server无法进行通信,此时Eureka Client无法向Eureka ......
笔记 Eureka

基于DCT变换和huffman编码的语音压缩算法matlab仿真

1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.算法理论概述 语音是人类最重要、最有效、最常用和最方便的交换信息的形式,是人们思想疏通和情感交流的最主要途径。在实际的语音通信中,有些信道难以扩宽且质量很差;有些信道正被广泛使用,短期内难以更新;有些昂贵的信道,每压缩一个比特 ......
算法 语音 编码 huffman matlab

素数重学笔记

之前都没有怎么理解,现在来复习一下。 试除法 从 \(2\) 枚举到 \(\lfloor\sqrt n\rfloor\) 判断能否整除。 朴素筛法 从小到大枚举每个数,将范围内它的倍数全部标记为合数。 显然就是调和级数,时间复杂度 \(O(n\log n)\)。 埃氏筛 观察到一个合数必定可以通过某 ......
素数 笔记