![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法馅(python)
花想容~Bxy
永远不要只满足于世界的表象,要敢于探寻未知的可能。
展开
-
回文字符串【js版】
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 输入: "A man, a plan, a canal: Panama" 输出: true 解释:"amanaplanacanalpanama" 是回文串 思路: 1.首先进行去除特殊符号,进行全部进行小写 2.使用双指针方法进行遍历判断 const isPalindrome = (str: string): boolean => { const str = s.to原创 2022-03-07 23:05:58 · 1545 阅读 · 0 评论 -
Python的排序算法
温故知新,看代码,想意义。原创 2020-03-11 10:06:15 · 149 阅读 · 0 评论 -
Python算法进阶 - 7(旋转数组)
给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 步: [7,1,2,3,4,5,6] 向右旋转 2 步: [6,7,1,2,3,4,5] 向右旋转 3 步: [5,6,7,1,2,3,4] 示例2: 输入: [-1,-100,3,99] ...原创 2020-02-22 16:04:41 · 282 阅读 · 0 评论 -
Python算法进阶 - 6(分隔链表)
给定一个头结点为 root 的链表, 编写一个函数以将链表分隔为 k 个连续的部分。 每部分的长度应该尽可能的相等: 任意两部分的长度差距不能超过 1,也就是说可能有些部分为 null。 这k个部分应该按照在链表中出现的顺序进行输出,并且排在前面的部分的长度应该大于或等于后面的长度。 返回一个符合上述规则的链表的列表。 举例: 1->2->3->4, k = 5 // 5...原创 2020-02-15 15:51:03 · 199 阅读 · 0 评论 -
Python算法进阶 - 5(分割链表)
给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 输入: head = 1->4->3->2->5->2, x = 3 输出: 1->2->2->4->3->5 来源:力扣(LeetCode) 链接:https://leet...原创 2020-02-11 16:58:35 · 486 阅读 · 1 评论 -
Python算法进阶 - 4(回文链表)
请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 第一种算法采用 def isPalindrome(self, head: ListNode) -> bool: vals = [] current_node = head whil...原创 2020-02-10 09:09:42 · 339 阅读 · 0 评论 -
Python算法进阶 - 3 (链表的中间节点)
给定一个带有头结点head的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。 注意,我们返回了一个 ListNode 类型的对象 ans,这样: ans.val = 3, ans....原创 2020-02-07 20:58:10 · 678 阅读 · 0 评论 -
Python算法进阶 - 2(删除链表中的节点)
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 现有一个链表 --head =[4,5,1,9],它可以表示为: 示例 1: 输入: head = [4,5,1,9], node = 5 输出: [4,1,9] 解释: 给定你链表中值为5的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9. 示例 2: ...原创 2020-02-06 07:50:09 · 637 阅读 · 0 评论 -
Python算法进阶 - 1 (反转链表)
反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reverse-linked-list ...原创 2020-02-05 10:17:21 · 140 阅读 · 0 评论