自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 资源 (1)
  • 收藏
  • 关注

原创 一颗算法树

算法

2022-06-02 11:48:46 151

原创 通信Phy-协议下载方法

1)协议:https://www.3gpp.org/ftp/Specs/2020-03/Rel-16/38_series2)CR:先找到总的:https://www.3gpp.org/ftp/tsg_ran/TSG_RAN/TSGR_93e/Docs找到对应的文章:https://www.3gpp.org/ftp/tsg_ran/WG1_RL1/TSGR1_106-e/Docs

2021-12-16 16:41:37 226

原创 VB-十进制切16进制;切割功能

Sub ffll()For i = 2 To 200 Step 1 a = Range("A" & i).Value b = Val(a) c = VBA.Hex(b) Range("B" & i).Value = c lenc = Len(c) - 11 splitdata = Mid(c, 8, 12) Range("C" & i).Value = splitdata Next iEnd Sub

2021-12-02 20:03:35 255

原创 VB-批量替换多重字段

Dim arrarr = array("a|11","b|22","c|3","d|f")file = "a.txt"Set fso = CreateObject("Scripting.FileSystemObject")Set f = fso.OpenTextFile(file, 1)txt = f.ReadAllf.CloseFor Each a In arr t = split(a, "|") txt = replace(txt, t(0), t(1))NextSet

2021-06-11 16:09:25 470 1

原创 C++特性-堆和优先队列

通过vector 建立堆默认最大堆1、建立:make_heap:在容器范围内,就地建堆,保证最大值在所给范围的最前面,其他值的位置不确定vector<int> nums = {4, 5, 1, 3, 2};make_heap(nums.begin(), nums.end());2、弹出:pop_heap:将堆顶(所给范围的最前面)元素移动到所给范围的最后,并且将新的最大值置于所给范围的最前面pop_heap(nums.begin(), nums.end());nums.pop_b

2021-06-04 16:38:10 122

原创 C算法-二维矩阵的和,HASH+二维前缀和

计算矩阵的和----- 等于目标值1、先求前缀和2、然后缩减到固定的两行;(此时有点像个一维数组,求target)3、右边界慢慢挪动;并且把每次右边界之前的所有数加入hash map;4、只需要检查右边界的值,减去target,是否在map中class Solution {public: int numSubmatrixSumTarget(vector<vector<int>>& matrix, int target) { int row

2021-05-30 12:33:34 172

原创 C++特性-Lambda表达式

举例内容代码备注捕获外部变量auto f = [a] { cout << a << endl; };a = 321;f(); // 输出:123值捕获,拷贝的方法捕获外部变量auto f = [&a] { cout << a << endl; };a = 321;f(); // 输出:321引用捕获,捕获绑定的变量捕获外部变量auto f = [=] { cout << a <<

2021-05-20 10:40:54 90

原创 C++特性-数学公式

1、sqrtend = (long long)sqrt(c);

2021-04-28 16:35:40 235

原创 C算法-数值在要求范围内之桶

Leetcode220,给你一个整数数组 nums 和两个整数 k 和 t 。请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] - nums[j]) <= t ,同时又满足 abs(i - j) <= k 。如果存在则返回 true,不存在返回 false。桶和滑动的思想;如果在K的范围内滑动的桶,按照nums[i]/(t+1)建立分类;然后如果当前移动位置已经大于K,那么要把滑窗头给擦除1、对新增的数据,如果桶里面有东西,那么一定是TRUE2、如果上个桶有东

2021-04-24 22:07:18 72

原创 C算法-字符串匹配之sunday算法

Leetcode28,实现strstrsunday算法1、建立next数组,代表每个字母,在pattern数组中最后一次出现的下标位置2、起始位置i,进行匹配是否满足要求;满足就返回起始位置i;不满足需要移动起始位置3、i的下个位置跳跃为:i += pattern - next[haystack[pattern+i]];处理过程中,请注意保证每个下标都是有效的举例1举例2class Solution {public: int strStr(string haystack, st

2021-04-24 11:44:46 185

原创 C算法-接雨水之双指针和单调栈

leetcode42题,接雨水。刷题刷久了,发现这个东西费智商啊,脑子里没有想清楚怎么计算。双指针思路如下:1、凹凸的面积计算,一列一列计算积水;需要关注左边最大值和右边最大值;如果当前左边更小,那么只需要移动左边的指针。class Solution {public: int trap(vector<int>& height) { int left, leftMax, right, rightMax, ret; left = 0;

2021-04-24 09:31:03 219

原创 C++特性-构造函数/析构函数

leetcode208题析构函数/构造函数,待更新class TrieNode {public: vector<TrieNode*> children; bool isWord; TrieNode() : isWord(false), children(26, nullptr) { } ~TrieNode() { for (auto& c : children) delete c; }};

2021-04-14 20:38:43 52

原创 C++数据结构-queue和stack和priority_queue

queue<TreeNode*> q;q.push(root);q.size()q.empty()tmp = q.front();q.pop();class Solution {public: vector<vector<int>> levelOrder(TreeNode* root) { vector <vector <int>> ret; if(root == NULL) {

2020-12-29 22:46:13 197

原创 C++数据结构-string

长度string str = "Test string";cout << str.length() << endl;cout << str.size() << endl;

2020-12-24 23:33:46 438 2

原创 C++数据结构-unordered_map

unordered_mapunordered_map<int,int> record; //有点hash的感觉了record.find(complement) != record.end() //查找record[nums[i]] = i; //添加map

2020-12-23 23:56:39 437

原创 GIT学习

https://www.liaoxuefeng.com/wiki/8960434880296001、修改或者添加都要用git add . / git rmgit commit或者用小乌龟,git add加新文件;对modify的内容可以直接用小乌龟commit就会add & commitgit add相当于放到暂存区,commit提交到分支丢弃修改–还没提交到master:如果不在暂存区,那么执行git checkout – file.txt,就跟哭上一模一样如果在暂存区了,那么执

2020-12-22 17:33:28 91

原创 C++数据结构-vector

https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html一维数组的使用vector<int>obj;//创建一个向量存储容器 int添加obj.push_back(i); //最后插入个i删除obj.pop_back(); //去掉数组最后一个值obj.clear();//清除容器中所以数据排序sort(obj.begin(),obj.end());//从小到大 #include <algo

2020-12-20 22:53:19 213 1

原创 C-监视方法收集

需求方法指向数组的指针(int[4])*ret

2020-12-11 15:37:53 68

原创 C算法-UT哈希是双向链表?

leetcode面试题 16.25. LRU缓存。之前写过一篇根本不算HASH的HASH,也总结过UT_hash_handle现在结合双向链表把这个题目理一理。思路如下:typedef struct Info_ { int id; int value; struct Info_ *pre; struct Info_ *next; UT_hash_handle hh;} Info;typedef struct { int MaxNum; Info *user; /*hash自带的u

2020-11-20 14:30:04 288

原创 通信Phy-PUSCH

38214PUSCH MappingType

2020-11-13 09:01:30 265

原创 通信Phy-时隙配比

38213

2020-11-06 15:39:38 761

原创 C算法-链表升级版

之前写过一篇简单的链表,现在更新些常用的手段。1、快慢指针找中点,那么slow是间点struct ListNode*fast, *slow;fast = slow = head;while(fast != NULL && fast.next != NULL) { slow= slow.next; fast = fast.next.next;}2、链表反转,需要一个指针NULL作为尾巴,每遍历一个节点,就把这个节点作为下一个的新尾巴; struct Li

2020-11-03 20:35:39 84

原创 python-字符串处理

方法具体用处示例[::-1]对单词表进行翻转,对整个速率进行翻转s[::-1]split分割字符串用途s.split(" ").join拼接字符串用途" ".jion(s)leetcode557,反转字符串中的单词示例class Solution: def reverseWords(self, s: str) -> str: # print (s[::-1])-------支持翻转 # print (s[::...

2020-10-27 20:39:18 55

原创 小工具-win10的字体和背景优化

https://www.sohu.com/a/148146920_7870751、字体相关Windows+R启动运行,输入regedit打开注册表编辑器,然后依次找到\HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics\IconFont(注意是一个二进制数值),只需要把第一行的F4改成F0,然后保存、重启电脑即可生效!说明:0000行中,默认的F4为9号大小,F0为12号大小,经测试一般12号字体比较合适;0010中,90 01为标准字体,

2020-10-15 15:33:58 596

原创 通信Phy-Harq反馈

使用场景参考38213进行介绍产生场景如果收到PDSCH,或者SPS PDSCH释放,UE将进行反馈ACK信息bit如果是收到SPS PDSCH释放,或者PDSCH,那么反馈ACK,如果不能解对下行包,那么反馈NACK分类ACK反馈分为半静态码本和动态码本:This subclause applies if the UE is configured with pdsch-HARQ-ACK-Codebook = semi-static.This subclause applies if t

2020-09-29 15:13:25 673

原创 通信Phy-DMRS

PUSCH DMRS(Demodulation reference signal),用于PUSCH的解调38211一、typeA,typeB决定了l0的位置typeA场景,有具体指示l0的位置–> l0 is given by the higher-layer parameter dmrs-TypeA-Position二、type1和type2的区别type1是4个port的测量规格、6个port的测量规格type2是6个port的测量规格、12个port的测量规格所以type2可以

2020-09-22 09:57:42 1635

原创 小工具-批量修改段落

本文介绍notepad++可以支持段落替换的方法。结合如下以某目录的文件夹内所有的段落替换,那么比较省事举例:源信息假设为:try: LogDebug('just a test') if a == b: return 'OK' else: return 'NOK'批量替换的目标结构假设为: a = b+c return 'HAHA'一、源消息处理-方法1:1、对(等字段进行转义替换([\[]()])为\\1try

2020-09-18 14:45:51 349

原创 通信Phy-mcs和tbsize

MCS Modulation and coding scheme1、MCSIndex,是代表某种调制方式和码率有关系64QAM,MCS选阶表从0到28,29以后是保留位256QAM,MCS选阶表从0到27,28以后是保留位网络会根据当前的信道质量条件,来指定数据包的MCS2、TB Size...

2020-09-15 11:54:40 2745

原创 通信Phy-调制

参考:https://zhuanlan.zhihu.com/p/581192091、64QAM,256QAMQAM(quadrature amplitude modulation)调制相当于调幅和调相结合的调制方式,不仅会改变载波振幅,还会改变其相位。就是把几bit信息映射到IQ坐标系里面,然后DAC(digital-analog converter)转换成模拟I路和Q路;256qam就是8bit,64qam就是6bit2、星座图与最终I路、Q路0100就是4,对应的是i=1,q=1/301

2020-09-15 10:43:05 424

原创 小工具-批处理脚本

【一、批量获取文件名】这个忘记是从哪里学到的了,感谢分享者,感谢大牛。1、创建个文本a.bat;键入如下信息并保存2、在需要的文件夹双击运行,即可获得文件名,保存在result.txt里面备注:如果需要保存路径:命令如下:【二、批量修改文件名】用如上方法获取文件路径及文件名。1、创建个文本rename.bat,键入如下信息ren a.txt a_new.txt //对文件a改名ren .\test\a.txt a_new.txt //对文件夹test中的a改名...

2020-06-12 17:54:08 169

原创 C算法-UT哈希

一、键值是INT型1、定义结构体,对应键值是整形int,需要有个全局指针比如userstypedef struct { int id; /* key */ char name[10]; int cnt; UT_hash_handle hh; /* makes this structure hashable */}my_struct;my_struct *users = NULL; /* important! initialize

2020-06-03 14:41:15 1129

原创 C算法-UT哈希+并查集

leetcode面试题 17.07. 婴儿名字。之前写过一篇根本不算HASH的HASH,现在借鉴了各位大神的UT哈希方法,把这个题目理一理。思路如下:1、通过info存取names的关键信息,本质就是比names多了cnt及root信息,用处是记录最终的cnt信息,以及给团队赋值为最小字典序(char *root)2、通过hash存取names的关键信息,用处是支撑synonyms元素的快速查找对应索引位置HASH_FIND,将两个索引进行并查集处理小知识点一:对字符串分割names = [“Jo

2020-06-02 16:17:52 389

原创 C算法-贪心/回溯/剪枝-垃圾代码

leetcode1055题,形成字符串的最短路径。作者有空来写吧,写了些啥???void dfs(char * source, int slen, char * target, int tlen, int start, int count, int *ret){ if (start == tlen) { if (*ret == -1) { *ret = count; } else { *ret = *ret < count ? *ret : count; } r

2020-05-16 08:56:25 123

原创 VBA-EXCEL统计数据

考点1:行号获取考点2:三目运算符Sub ffll()ret0 = 0ret1 = 0Row = ActiveSheet.UsedRange.Rows.CountFor i = 2 To Row Step 1 k = Range("AJ" & i).Value If k > 0 Then k1 = IIf(Range("AL" & i).Valu...

2020-04-02 12:49:51 367

原创 VBA-EXCEL查找最后一个非空字符

=LOOKUP(1,0/(E18:W18<>""),E18:W18)Current列是效果图

2020-04-02 12:47:55 970

原创 C算法-贪心/回溯/剪枝/记忆

leetcode139题,单词拆分。按照之前的讲解C算法-贪心/回溯/剪枝 进行处理,会有个超时的部分。评论区大神加了个记忆,瞬间满分。思路如下1、快排对数据进行整理(贪心),调用一个函数dfs()2、dfs的结构:for循环, dfs()递归,此步骤注意是否涉及剪枝3、dfs的参数要求:包含有目标条件的参数,包含start参数,如果有需要传递给下一次循环传递还需要个col/count参数,...

2020-03-25 22:56:53 232

原创 C算法-贪心+排序+双指针

leetcode435,无重叠区间。给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。 [ [1,2], [2,3], [3,4], [1,3] ]移除1,3即可。leetcode452,用最少数量的箭引爆气球。[[10,16], [2,8], [1,6], [7,12]],分别代表每个气球的左右距离,需要一个弓箭戳破。我们在x=6和x=11上就可以戳破[2,8],[1,6]和...

2020-03-24 18:25:12 216

原创 C算法-动态规划

leetcode面试题17.16.按摩师。一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。自己用了个递归,超时了,强行理解下别人的动态规划吧1、搞一个数组,来放当前i被访问到,那么最大值是多少2、初始化:如果第2个被占用,那么第...

2020-03-24 14:20:34 149

原创 C算法-DFS(深度优先搜索法)带返回值

leetcode490题,迷宫。带返回值与普通的C算法-DFS(深度优先搜索法)在写法上要注意的是:标记访问这个一定要有,如果本身条件不答应,就建立个数组vistied[MAXLEN][MAXLEN]1、for循环节点,和判断什么时候递归,放在主函数,与回溯风格明显不同。2、dfs结构:a、if 出界 xxx;b、if被访问过 xxx;c、标记访问; d、dfs(next)3、注意满足条件...

2020-03-24 12:15:03 932

原创 C算法-BFS(广度优先搜索法)

leetcode490题,迷宫。算法核心就是1、写好入队函数的判断2、写好外面函数入队的场景3、二维数组需要构造结构体包含x,y坐标#define MAXLEN 10000typedef struct { int x; int y;}Queue;Queue g_queue[MAXLEN];int Enqueue(int x, int y, int tail, int *...

2020-03-24 11:25:00 430

护眼颜色的快捷设置脚本

护眼颜色的快捷设置脚本-win10,可以设置一键式护眼颜色。护眼颜色的快捷设置脚本-win10,可以设置一键式护眼颜色。护眼颜色的快捷设置脚本-win10,可以设置一键式护眼颜色。

2020-12-10

空空如也

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

TA关注的人

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