leetcode练习-4
剑指 Offer 03. 数组中重复的数字 数组长度为n,但数的范围在0到n-1。所以必定有重复。但直接遍历真的太憨憨了:sweat_smile:(是我没错了)。 使用哈希表的set()【集合】方法 set对象的每一个元素要求可进行哈希运算,set 会对内部元素进行去重,每个元素在同一个set 中只会出现一次; 字典可以将一个可哈希值映射到一个任意…
leetcode练习-3
剑指 Offer 05. 替换空格 在 Python 和 Java 等语言中,字符串都被设计成「不可变」的类型,即无法直接修改字符串的某一位字符,需要新建一个字符串实现。 方法一:遍历 class Solution: def replaceSpace(self, s: str) -> str: if not s : return '…
leetcode练习-2
剑指 Offer 06. 从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 class ListNode: def __init__(self, x): self.val = x self.next = None class Solution: def reversePrint(self, head: List…
leetcode练习-1
剑指offer09.用两个栈实现队列 不难,但自己对于python面向对象的掌握还有欠缺。中间也没有考虑周全。思路虽然有了,但编写代码的时候错误还蛮多的。 另外,特别要考虑到如过队列加入,删除再进入再删除情况下的情况。 class CQueue: def __init__(self): self.stack_1 = [] self.stack_2 …
计算机网络笔记·2
第四章 网络层:数据层面 网络层的关键功能:转发(局部),路由(全局)。 数据层面:转发(传统方式--仅IP;SDN方式--各个字段) 控制层面:选路 路由器组成 路由:路由选择算法生成路由表 转发:从输入到输出根据路由表进行分组转发 基于头部字段的任意组合进行转发 基于目标的转发--仅仅依赖IP地址 交换结构(将分组从输入缓冲区传输到合适的输出端…
计算机网络笔记·1
第一章 概述 因特网 从具体构成角度:节点,边(通信链路),协议(TCP/IP)。 从服务的角度:通信的分布式应用,为应用提供的服务(TCP,UDP)【通过API】。 网络边缘:端系统(主机),分为客户机和服务器;应用程序。 网络核心:数据传输的方式包括:电路交换【预留资源:频分,时分,波分】(电话)和分组交换【按需使用,每个分组包含目标主机的完整…
模数转换的应用
AD的概念及性能指标 AD概念:将连续的模拟信号转换为离散的数字信号的器件。 转换时间:AD完成一次转换所需要的时间,其倒数为转换速率。 分辨率 输出模拟量最小变化程度的指标(32上的为12位)。12位,满量程5v分辨率为:5 /(2^12)=1.22mv 量化误差 量化过程引起的误差 理论上规定为一个单位分辨率的-1/2 --- +1/2LSB …
STM32学习笔记
32简介 32的内核是ARM 32位的Cortex-M3。 启动模式 内置flash:主闪存,对应着烧写到flash的用户程序 系统存储器:对应着系统的启动代码,将采用串口1下载代码到flash。使用串口下载代码时使用 内置SRAM:访问SRAM GPIO 一个GPIO端口至少需要两个寄存器,一个做控制用的“通用I/O端口控制寄存器”,还有一个是存…
SVD,PCA,ICA的分析
奇异值分解(SVD) 奇异值分解是将矩阵分解为奇异向量(singular vector)和奇异值(singular value)。奇异值分解将原矩阵$A$分解为三个矩阵的乘积: $$A{mn}=U{mm}D{mn}V{nn}^{T}$$ 其中矩阵$U$和$V$为正交矩阵,$D$为对角矩阵。$D$对角线上的元素称为$A$的奇异值,$U$的列向量被称为…
简单的波形发生器
同相加法电路 求和电路分为同相和反相。反相需要再加一个负号。图中未反相加法电路,其计算公式为:$-v{\mathrm{o}}=\frac{R{3}}{R{1}} v{\mathrm{i} 1}+\frac{R{3}}{R{2}} v_{\mathrm{i} 2}$因此要计算两个波形相叠加,需要改变电路中阻抗的阻值。 同相放大电路 根据虚短 Vp=V…