- 博客(46)
- 收藏
- 关注
原创 [ohos] sa权限最小化时遇到的ability_delegator问题
【代码】[ohos] sa权限最小化时遇到的ability_delegator问题。
2023-12-07 22:16:21 105
原创 [ohos] selinux
单刷 /home/q00599926/workspace/rk3568/out/rk3568/packages/phone/images/system.img。快速验证selinux,编译及打包system镜像。全编user版本,从out取出版本,刷机。1、装串口驱动,网上搜一下就有。2、连接串口线,反三角。3、moba连接一下。
2023-11-17 17:04:10 103
原创 [算法下] 4. 常见题目与技巧
根据中序、前/后序遍历求另外一个遍历序列frontmid2backmidback2frontle105. 从前序与中序遍历序列构造二叉树le106. 从中序与后序遍历序列构造二叉树洛谷P2865 [USACO06NOV]Roadblocks G严格次短路使用bellman-ford queue638. 最长路...
2021-12-02 17:44:12 56
原创 [算法下] 5. 常见做题技巧
1. 线段树区间查询线段树修改–懒标记不用的时候懒标记到包含区间就不再往下了,用的时候(修改或查询)把懒标记下沉,去更新子节点3。 更新到叶子节点就是O(n)级别的了oj-223.线段树模板22. 单调栈leetcode - 84. 柱状图中最大的矩形单调栈适合解决的问题:向前或者向后找第一个大于或小于某元素的元素每次遇到影响单调栈的元素就将栈顶元素弹出,计算一波本题向前找第一个小于某元素的元素leetcode - 42~3. 单调队列oj-271.滑动窗口
2021-12-02 17:43:00 61
原创 [算法] 4.力扣题目讲解
前缀和前缀和是一个数组,多次询问区间和的时候,空间换时间前缀和从num[1]开始存,num[0]空出来防止访问越界13. 罗马数字转整数
2021-12-02 17:41:59 253
原创 [高级数据结构] 3. 红黑树(上)
二、学习诀窍1、理解红黑树的插入调整,要站在祖父节点向下进行调整2、理解红黑叔的删除调整,要站在父节点向下调整3、插入调整,主要就是为了解决双红情况4、新插入的节点一定是红色,插入黑色节点一定会产生冲突,违反条件5,插入红色节点,不一定产生冲突5、把每一种情况,想象成一棵大的红黑树中的局部子树6、局部调整的时候,为了不影响全局,调整前后的路径上黑色节点数量相同三、插入策略1、叔叔节点为红色的时候,修改三元组小帽子,改成红黑黑2、叔叔节点为黑色的时候,参考AVL树的失衡情况,分成LL,LR,
2021-12-02 17:41:21 67
原创 [高级数据结构] 3. 红黑树
删除调整删除红色节点,不影响平衡删除黑色节点分情况:度为0,特殊思维度为1,孩子节点一定是红色,没有另一边(路径黑色数量相同)度为2可以转换为上面两种插入调整为了干掉双红,度为0删除调整为了干掉双重黑NIL’红黑树本质上是平衡二叉树牢记:保证局部黑色节点数量不变RR情况:兄弟是右子树,右孩子节点是红色为了干掉双黑,大左旋,导致不平衡51->原根38颜色38和72->黑原因:48颜色不确定,防止它是红色,把38染黑,RL右兄弟的右孩子一定是黑色...
2021-12-02 17:40:57 98
原创 [算法上] 8.考试题目
目录1.单词反转2.单词反转3.01长串4.西湖一日游5.兄弟战争26.岛屿连接1.单词反转2.单词反转3.01长串4.西湖一日游5.兄弟战争26.岛屿连接起点找到另一个岛,把所有第一个岛和第二个岛的点作为起点进行搜索...
2021-12-02 01:52:23 103
原创 [算法上] 6.递归与排列组合问题
目录⭐递归必会题目oj-240 图形打印四oj-235 递归实现指数型枚举oj-236 递归实现组合型枚举oj-237 递归实现排列型枚举⭐搜索问题深搜走地图--解决联通性问题(==深搜模板==)广搜走地图--解决联通性问题+最少步数问题oj-535 瓷砖oj-397 僵尸来袭oj-536 最大黑色区域oj-404 01迷宫简易版oj-396 填涂颜色深搜版广搜版oj-399 小明吃饭(==广搜模板==)oj-304 骑士风度的牛oj-398 马的遍历oj-305 乳草的入侵⭐递归必会题目oj-240
2021-12-02 00:22:51 896
原创 [胡] 1. 从递推到动态规划(上)
从递推到动规(上)递推问题的求解套路确定递推状态,一个数学符号+一个数学符号的语义解释确定递推状态,推导递推状态符号的自我表示方法程序实现,(递归+记忆化 / 循环实现)确定递推状态注意:这是学习递推问题的重中之重。学习确定递推状态的技巧。f(x) = y;y:问题种的求解量,也是所谓的因变量x:问题中直接影响求解量的部分,也是我们所谓的自变量本质:就是寻找问题种的自变量与因变量确定递推公式本质:分析状态种的容斥关系f(n) = f(n - 1) + f(n - 2
2021-09-18 01:41:26 101
原创 [算法] 7. 搜索综合问题
搜索问题总结存储状态(坐标,步数)起始状态(S)终止状态(特定坐标T)状态转移(坐标转移)去重(直接改地图或者开标记数组)
2021-09-14 21:30:48 2765
原创 [算法下] 3. 图论算法
P3生成树概念把一些边删掉,图中的点还能保持联通生成树不唯一最小(代价)生成树生成树中边的数量n-1所有剩余边权加在一起最小的生成树kruskal - 3366.洛谷 -【模板】最小生成树边排序,权值从小到大【对边进行处理】并查集,生成树不断变大(边的数量不断增加到n-1)prim - 3366.洛谷 -【模板】最小生成树对点的集合进行延伸【对点进行处理】,可以以任意点为起点,遍历某一起点的所有边优先队列prim - 1265.洛谷 - 公路修建kruska
2021-09-06 21:12:34 70
原创 [算法下] 2.常见题目与技巧
1. 前缀和(一维数组),快速求解区域和le303. 区域和检索 - 数组不可变2. 前缀和(二维数组)le304. 二维区域和检索 - 矩阵不可变
2021-09-05 17:58:08 74
原创 [算法上]3. oj题目讲解
oj599两数之和【思路】暴力解法 o(n^2)第一层循环枚举第一个数,第二层循环枚举第二个数固定一个数,里层二分查找 o(nlogn)哈希表 o(n)+o(n),空间复杂度也是o(n)没懂哈哈扫一遍,把所有数字存在哈希表里,遍历一遍,看看另一个数字是不是在哈希表里双指针法o(n)为什么是o(n)?只需要扫一遍数组就行//双指针法#include <iostream>#include <cstdio>//scanf()using names
2021-08-16 04:28:31 703
原创 [C] 6. 复杂结构与指针
结构体计算机可以解决现实中可被计算的问题,首先要对现实问题进行数据表示要存储某种信息,用相应类型定义相应变量,变量里面去存储值结构体是更为复杂的类型,结构体中包含了各种类型的字段,这些字段就是对这个更为复杂的类型的解析定义变量时的区别C语言中定义结构体变量用struct+结构体名C++中不加struct定义,因为在C++中struct是类的关键字访问结构体成员有2种方法:.直接引用->间接访问只要是变量,就在内存中占据一定大小的空间结构体开辟空间大小的对齐原则:开辟空间时按照
2021-08-10 08:09:28 184
原创 [高级数据结构] 哈夫曼编码
huffman代码Huffman是平均查找长度最优的变长编码#include <stdio.h>#include <stdlib.h>#define swap(a, b) {\ __typeof(a) __c = a;\ a = b, b = __c;\}typedef struct Node { char ch; // 字符 double p; // 概率 struct Node *lchild, *rchild;} N
2021-08-06 01:11:39 116
原创 [Linux] 10. shell编程基础《updating》
正则表达式针对文本匹配单个字符 i . 匹配一组字符[]元字符需要加上 -P 才会支持元字符POSIX字符类*不需要转义其他的好像都要转义加了-E就不用\转义了-w表示独立的单词匹配邮箱???sed 专题Linux三剑客 grep sed …vim交互式的文本编辑器sed非交互式 文本编辑器、语法规则sed+选项+命令+ 文件1a 对第一行进行追加$a对最后一行追加追加和插入的区别追加在后面插入在当前...
2021-08-02 01:41:10 222
原创 [高级数据结构] 5. 字符串匹配
暴力匹配 算法 brute_force字符串匹配问题:单模匹配问题,顾名思义只有一个模式串依次对齐模式串和文本串的每一位,直到匹配成功关键:不重不漏的找到答案int brute_force(const char *s, const char *t) { for (int i = 0; s[i]; i++) { int flag = 1; for (int j = 0; t[j]; j++) { //if (s[i + j] - t[
2021-07-25 10:50:41 131
原创 [高级数据结构] 4. 习题课
马拉车算法解决回文串问题处理回文串的四种算法暴力匹配2种情况:1种是以某个字符为对称中心,1种是以间隙(2个字母之间)为对称中心int b[100];int d[100]; // i + 1for (int i = 0; i < size(str); i++) { b[i] = 1; // i为中心的回文长度是它本身字符 while (i - b[i] >= 0 && i + b[i] < n && str[i - b[i]]
2021-07-24 21:24:10 110 1
原创 [高级数据结构] 3. 字典树
trie 字典树时间复杂度分析 n是字符串个数 m字符串长度构建操作时间复杂度 o(n * m)查找操作时间复杂度 o(m)优点查找高效,并且利用公共前缀来节约空间缺点空间复杂度过高思考:如何解决空间复杂度过高的问题?使用场景:自动补全功能字典树代码#include <stdio.h>#include <stdlib.h>#include <string.h>#include <time.h>#define base 26t
2021-07-21 17:26:35 189
原创 [高级数据结构] 4. 红黑树(下)
一、删除调整发生的前提删除红色节点,不会对红黑树的平衡产生影响度为1的黑色节点,唯一子孩子,一定是红色删除度为1的黑色节点,不会产生删除调整删除度为0的黑色节点,会产生一个双重黑的NIL节点删除调整,就是为了干掉双重黑二、删除调整双重黑节点的兄弟节点是黑色,兄弟节点下面的两个子节点也是黑色,父节点增加一重黑色,双重黑与兄弟节点,分别减少一重黑色。兄弟节点是黑色,并且,兄弟节点种有红色节点R(兄弟)R(右子节点),左旋,新根改成原根的颜色,将新根的两个子节点,改成黑色R(兄弟)L(
2021-07-16 22:02:44 93
原创 [Linux] 7. 数据提取
习题tr命令,内容的替换操作。"1 2 3 4 5 6 7 9 a v 你好 . /8" 求以上字符串中所有数字之和echo -n "1 2 3 4 5 6 7 9 a v 你好 . /8" | tr -s -c 0-9 + | xargs echo | bcecho “ABCefg” >> test.log 请将该⽂件中所有⼤写字母转换为⼩写cat test.log | tr "[:upper:]" "[:lower:]" > test.log 找到
2021-07-15 03:15:04 375
原创 [算法下] 1.图论算法
图有向、无向有权、无权邻接矩阵本质是二维数组 arr.cpp优点:判断两点相连快 \ 缺点:稀疏图浪费空间,求一点的度要遍历一行floyd算法 floyd.cpp1.时间复杂度O(n3),处理数据规模小的问题2. 核心公式 j --> k ( i 作为中转点)3. 求任意点到任意点的最短路,无负边邻接表本质是二维数组,对临界矩阵的“空边”进行压缩有权图的数组元素是node,用vector实现节省内存优点:省空间,求某点的度不需要遍历所有点(邻接矩阵的缺点) \ 缺
2021-07-15 01:09:50 186
原创 [高级数据结构] 2. AVL树
退化成链表,查找效率降低,变成o(n)o(n)o(n)不同的的插入顺序,导致查找效率不同AVL树平衡二叉排序树解决二叉排序树查找性能退化的问题小学生必知必会神经网络—60年前的数据结构
2021-07-01 00:52:49 185
原创 [C] 1. 语言入门基础
1. C语言概述为什么要学C?汇编C语言强依赖于寄存器可移植性好直接与寄存器等沟通,代码复杂,效率更高简单、可读、开发效率高C和C++的编程范式CC++面向过程面向过程、面向对象、泛型编程、函数式编程到底学什么?学习思维逻辑、编程范式,而不仅是语法2. 输入与输出函数格式化输出函数:printf头文件:stdio.h 原型:int printf(const char *format, ...); 参数1,fo
2021-06-22 23:55:07 50
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人