java Trie实现高效正向最大匹配中文分词
摘要:Java Trie实现高效正向最大化中文分词 在中文分词中,如何高效地对一段中文文本进行切分是一个非常关键的问题。传统的中文分词方法大多是基于词典的正向最大匹配(Maximal Forward Matching, MFM)和反向最大匹配(Maximum Backward Matching, MBM)
阅读全文
python 最小生成树的2种经典算法——Prime&Kruscal
摘要:一、从乡村公路规划说起 想象你是一位负责偏远地区公路建设的工程师。这里有7个村庄需要连通,每两个村庄之间修路的成本不同。上级要求你用最省钱的方式,让所有村庄都能互相到达,这时候你需要的就是最小生成树算法。 什么是生成树?简单说就是用最少的道路(n-1条)把所有n个村庄连起来,并且没有环路。就像用钢筋
阅读全文
获得课表的excel表格(0代码)
摘要:因为马上开学了,本学期课业繁重,还打算考个证书,打算向j型人格靠近一下(虽然不知道最后起的作用大不大)。接下来是正文,很简单。 打开学校的课程表界面,将你想要记录在excel表格的矩形方框截图 (图片来源于网络) 进入网站(图片转xlsx) 转化格式并下载xlsx文件 删除不必要的字符 用表格文件进
阅读全文
python 循环终止条件的判断小技巧(结合实际代码)
摘要:在编写 Python 程序时,判断循环的终止条件是确保程序正确性和效率的关键。有些编程题目可能没有显式的终止条件,这时需要结合经验和数学知识来推断。 1. 利用数学性质推断循环终止条件 在处理数值计算时,循环的终止条件往往与数学性质密切相关。例如,在计算一个数的平方根时,可以通过逐步逼近来找到其近似
阅读全文
python 列表(list)基础知识、应用场景(有代码)和易错点总结
摘要:Python 列表:基础知识与应用场景 1. 列表(List)的概念 列表是 Python 中最常用的数据结构之一,用于存储一组有序的元素。可以存储不同类型的数据,甚至可以存储其他列表(嵌套列表)。列表是可变类型,可以随时修改、添加或删除元素。 2. 创建列表 空列表: empty_list = [
阅读全文
python 完美数(Perfect Number)判断3种方法比较
摘要:你的代码是用于对一个正整数进行分类(完美数、盈数或亏数),基于其所有真因子(即不包括自身的因子)的和。 可以优化和实现的其他方法如下: 方法 1:优化版(减少存储 & 直接累加) def classify(number): """Classify a number as 'perfect', 'ab
阅读全文
python 凯撒加密(Caesar Cipher)4种解法比较
摘要:方法 1:使用 ASCII 计算(基础方法) 代码 def rotate_ascii(text, key): result = "" for char in text: if char.isalpha(): shift = ord('A') if char.isupper() else ord('a
阅读全文
python 正则化表达函数 re.findall() 基础以及常见应用
摘要:re.findall() 是 Python re 模块中的一个函数,用于在字符串中查找所有匹配正则表达式的子串,并返回一个列表。这些子串是与正则表达式模式匹配的部分。re.findall() 适用于当我们想提取字符串中所有符合某个模式的部分时。 基本语法 import re re.findall(p
阅读全文
pangram 的6个常见解决方案比较 && pangram 在实际项目中的应用
摘要:pangram(字母全称句):判断句子是否为回文句,涉及的是对句子中的字母进行处理,判断一个句子是否包含了所有的字母 1. 使用集合(Set)实现(最推荐的方式) def is_pangram(sentence): sentence = sentence.lower() # 转换为小写,确保大小写不
阅读全文
python 中集合的基础知识和应用场景
摘要:Python 中集合(Set)的基础知识与应用场景 在 Python 中,集合(set)是一个无序且不可重复的元素集合。本文将从基础知识入手,结合实际应用场景,带你深入了解集合在 Python 中的使用方法。 1. 集合的基本概念 集合是由多个元素组成的,元素之间没有顺序且没有重复。Python 中
阅读全文
python 字符串常用函数和用法总结
摘要:1. 字符串的基本创建与操作 1.1 创建字符串 在Python中,字符串可以用单引号、双引号或三引号来创建: s1 = 'Hello' s2 = "World" s3 = '''This is a multi-line string''' 1.2 字符串拼接 在Python中,字符串拼接可以通过加
阅读全文
python 2种排序算法的比较
摘要:在 Python 中,列表排序有两种常用方法: 1. list.sort() 方法 功能:原地排序(直接修改原列表) 语法:list.sort(key=None, reverse=False) 参数: key:排序依据的函数(如 key=len 按长度排序) reverse:是否降序(True 为降
阅读全文
python 迅速判断重复值
摘要:每天一篇博客,心情美美哒_ Python 快速判断重复值的方法 在 Python 中,可以使用 集合(Set) 来快速判断列表中的重复值。集合是一种无序且元素唯一的数据结构,利用它的互异性可以轻松剔除列表中的重复值。 核心方法 unique_elements = set(list) 功能:将列表转换
阅读全文
适用于条件判断类函数优化
摘要:逻辑合并法则 将多重条件分支合并为单一逻辑表达式 使用 and/or 短路特性简化判断 示例:if A and B: ... elif C and D: ... → return (A and B) or (C and D) 冗余消除原则 移除隐含关系的重复判断 示例:x%100==0 and x%
阅读全文
代码编写时常用的优化小技巧
摘要:1. 使用高效的数据结构 选择合适的数据结构可以显著提升代码性能。 示例: 列表 vs 集合:如果需要频繁检查元素是否存在,使用集合(set)而不是列表(list),因为集合的查找时间复杂度是 O(1),而列表是 O(n)。 # 低效 my_list = [1, 2, 3, 4, 5] if 3 i
阅读全文
python 2种方法获取多位数的每一位数字
摘要:在 Python 中获取一个多位数的每一位数字,可以通过以下两种常用方法实现,我们以数字 12345 为例: 方法一:字符串转换法(直观易懂) number = 12345 # 转换为字符串后遍历每个字符 digits = [int(d) for d in str(number)] print(di
阅读全文