摘要: 1. NC137 表达式求值。 先将中缀表达式变为后缀表达式,然后对后缀表达式进行求值。 1. 中缀表达式通过堆栈和队列转化为后缀表达式,遇到数字直接存入后缀表达式队列,遇到符号存入堆栈。在符号存入堆栈之前,先将符号与堆栈顶的符号元素进行优先级比较,如果堆栈顶的符号元素优先级大于或等于待插入的符号, 阅读全文
posted @ 2021-06-25 22:31 ybxmCnblogs 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 动态规划 1. 剑指 Offer 14- I. 剪绳子 I 动态规划来解 ​ class Solution { public int cuttingRope(int n) { if (n == 2) return 1; if (n == 3) return 2; int dp[] = new int 阅读全文
posted @ 2021-05-08 11:48 ybxmCnblogs 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 树 1. 如果给出一个二叉排序树的后序遍历,可以还原这课二叉排序树,相当于原来是由中序遍历来分左右,现在是由二叉排序树的性质来分左右。原来是由中序序列来确定节点是在左边还是右边,现在则是直接将节点的值与根节点比较来确定节点的插入位置 int数组的划分,除了用数组、左序列、右序列,还可以用System 阅读全文
posted @ 2021-05-06 22:31 ybxmCnblogs 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 数字处理 1. 剑指 Offer 56 - I. 数组中数字出现的次数 ​ class Solution { public int[] singleNumbers(int[] nums) { int n = 0, m = 1, x = 0, y = 0; // 任何数与0异或,都是其本身 for(i 阅读全文
posted @ 2021-05-06 20:58 ybxmCnblogs 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 第一部分 编译流程介绍 程序从源文件变成二进制可执行文件主要分为4个步骤:预编译、编译、汇编、链接。文件的格式变化为mian.c(源文件) -> main.i(预编译后的文件) -> main.s(编译后的文件,即汇编代码) -> main.o(汇编后的文件) -> main.exe(二进制可执行文 阅读全文
posted @ 2020-08-24 15:24 ybxmCnblogs 阅读(792) 评论(0) 推荐(0) 编辑
摘要: linux操作系统主要分为三个部分:进程管理、内存管理、文件系统管理(外部设备作为设备文件属于文件系统管理)。 首先介绍系统的启动:在计算机启动后,首先得到处理的是BIOS和EFI等系统固件,系统固件从磁盘的引导扇区加载引导加载程序,而引导加载程序负责将Linux系统的内核装入内存,并跳转到linu 阅读全文
posted @ 2020-04-03 19:52 ybxmCnblogs 阅读(549) 评论(0) 推荐(0) 编辑
摘要: 一、计算机网络体系结构 计算机网络的体系结构有两种:IOS七层模型和TCP/IP五层模型。 两种模型各层的对应关系如下图所示。 IOS模型是最经典的网络模型结构,但是TCP/IP模型却是现在最为常用的(下面提到的各种协议归于哪一层是针对TCP/IP模型来说的),下图说明了在TCP/IP模型中数据的封 阅读全文
posted @ 2019-12-13 21:32 ybxmCnblogs 阅读(611) 评论(0) 推荐(0) 编辑
摘要: ID3算法最核心的思想是采用信息增益来选择特征,决策树类的算法最大的不同就是特征的选择标准不同,C4.5采用信息增益比,用于减少ID3算法的局限(在训练集中,某个属性所取的不同值的个数越多,那么越有可能拿它来作为分裂属性,而这样做有时候是没有意义的),CART算法采用gini系数,不仅可以用来分类, 阅读全文
posted @ 2019-12-06 20:10 ybxmCnblogs 阅读(977) 评论(0) 推荐(0) 编辑