排序
【算法】【Python】N皇后问题的三种解法
本文分析了N皇后问题的三种解法:回溯法通过逐行尝试并安全检测实现,时间复杂度O(n!)但实现简单;分支限界法利用列和对角线标记数组将安全判断优化至O(1),通过空间换时间显著提升速度;位运算...
【Python】datetime包
datetime 是 Python 内置的日期时间处理库,它包含了处理日期、时间、时间间隔等的类和函数。datetime 库可以从系统中获得时间,并以用户选择的格式输出。下面是 datetime 常用的类和函数以及它...
【C】链表节点交换
链表节点交换? 傻呼呼的我在被XZH学长嘲笑用结构体内容交换之后,我下定决心自己研究以下链表节点交换! 以下是我的研究成果 //链表节点交换 void swap(item *pre,item *mid,item *last){ item...
【算法】【Python】能否构成回文字符串
检测一个字符串能否通过在头部加入指定的字符从而形成回文串。优化代码时避免了字符串拼接,通过双指针技术判断是否可以通过向字符串头部插入字符形成回文。优化后的代码仅检查尾部字符是否可以...
【算法】【Python】Manacher算法实现在线性时间内求解最长回文子串
Manacher算法通过插入分隔符统一奇偶回文处理,利用镜像对称原理复用计算结果。动态维护中心C、右边界R和半径数组P[i],在扩展时优先借助已有回文信息减少重复比较。当新回文触及边界时暴力扩展...
【算法】【Python】使用动态规划(DP)解决最长公共子序列(LCS)问题
使用动态规划计算 LCS 长度后,从dp[m][n]回溯构造 LCS 字符串:若text1[i-1] == text2[j-1],加入 LCS 并向左上移动,否则向dp值较大的方向移动。最终反转 LCS 输出。时间复杂度 O(m×n)。