02 2023 档案

摘要:位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。 练习题:lc 191. 位1的个数 class Solution { // 开始给的无符号整数一定大于0,所以在while循环中n为true,每次取二进制n的末位,与1进行&运算,结果为1,说明该位为1,那么count++;n 阅读全文
posted @ 2023-02-26 20:23 blogzzt 阅读(15) 评论(0) 推荐(0) 编辑
摘要:一、概念 问题可以描述为:给定一组物品(有N 个物品和容量为W 的背包,每个物品都有自己的体积w 和价值v),在限定的总重量内,我们如何选择,才能使得物品的总价格最高。 常见的有01背包问题,即限定每种问题只能取0个或1个。 问:要使背包装的物品价值最大,应该怎么选,最大值是多少? 二、动态规划解法 阅读全文
posted @ 2023-02-19 18:01 blogzzt 阅读(27) 评论(0) 推荐(0) 编辑
摘要:一、概念 字典树(Trie)用于判断字符串是否存在或者是否具有某种字符串前缀。 包含三个单词 "sea","sells","she" 的 Trie 长这样: 为什么需要用字典树解决这类问题呢?假如我们有一个储存了近万个单词的字典,即使我们使用哈希,在其中搜索一个单词的实际开销也是非常大的,且无法轻易 阅读全文
posted @ 2023-02-19 11:45 blogzzt 阅读(17) 评论(0) 推荐(0) 编辑
摘要:一、在栈(Stack)上创建对象 Student是一个类,创建一个实例化对象: Student stu; 下面进行创建对象指针的操作(非必须): 上面代码中创建的对象 stu 在栈上分配内存,需要使用&获取它的地址: Student *pStu = &stu; pStu 是一个对象指针,它指向 St 阅读全文
posted @ 2023-02-19 10:51 blogzzt 阅读(165) 评论(0) 推荐(0) 编辑
摘要:什么是遍历: 所谓遍历(Traversal),是指沿着某条搜索路线,依次对树(或图)中每个节点均做一次访问。访问结点所做的操作依赖于具体的应用问题, 具体的访问操作可能是检查节点的值、更新节点的值等。 命名 根据访问结点操作发生位置命名: ① NLR:前序遍历(PreorderTraversal亦称 阅读全文
posted @ 2023-02-08 23:37 blogzzt 阅读(137) 评论(0) 推荐(0) 编辑
摘要:编程语言中,我们习惯将函数调用自身的过程称为递归,调用自身的函数称为递归函数,用递归方式解决问题的算法称为递归算法。 设计递归函数时,我们必须为它设置一个结束递归的“出口”,否则函数会一直调用自身(死循环),直至运行崩溃。接下来我们以“用递归方式求 n! ”为例,给大家展示一个正确的递归函数。 #i 阅读全文
posted @ 2023-02-08 23:08 blogzzt 阅读(203) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示