排序
【算法】【Python】使用动态规划(DP)解决最长公共子序列(LCS)问题
使用动态规划计算 LCS 长度后,从dp[m][n]回溯构造 LCS 字符串:若text1[i-1] == text2[j-1],加入 LCS 并向左上移动,否则向dp值较大的方向移动。最终反转 LCS 输出。时间复杂度 O(m×n)。
【算法】【Python】合数个数(素数筛法)
埃拉托色尼筛法通过标记法筛除合数,高效找出素数。算法从 2 开始,将其倍数标记为合数,避免重复计算,时间复杂度为 O(n log log n)。代码统计 1 到 2020 的合数个数,优化点包括从 i*i 开始筛...
【算法】【Python】datetime包的妙用
Python 的 datetime 模块提供了方便而强大的日期时间处理工具,在算法竞赛中应对涉及日期、时间、日历等问题时,可以大大简化代码逻辑,避免因手动计算而出错。掌握其常见函数和类(如 date、da...
【人工智能】【Python】K-近邻算法实验
本实验使用K近邻分类算法对sklearn葡萄酒数据集进行分类,采用标准化预处理、网格搜索优化超参数(k值、距离度量、权重方式)并结合5折交叉验证确保模型稳定性。最终,最佳模型在测试集上实现10...
【人工智能】【Python】各种评估指标,PR曲线,ROC曲线,过采样,欠采样(Scikit-Learn实践)
本文介绍了使用Python和Scikit-Learn进行信用卡欺诈检测的完整流程。通过处理高度不平衡的数据集(492例欺诈 vs 284315正常),采用SMOTE过采样技术平衡样本,并使用决策树模型训练。评估部分涵...
【算法】【Python】Manacher算法实现在线性时间内求解最长回文子串
Manacher算法通过插入分隔符统一奇偶回文处理,利用镜像对称原理复用计算结果。动态维护中心C、右边界R和半径数组P[i],在扩展时优先借助已有回文信息减少重复比较。当新回文触及边界时暴力扩展...