首页 > 其他分享 >Study Plan For Algorithms - Part42

Study Plan For Algorithms - Part42

时间:2024-09-25 12:23:11浏览次数:8  
标签:head curr max Study heights Algorithms Plan next stack

1. 删除排序链表中的重复元素
给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。

class Solution:
    def deleteDuplicates(self, head: Optional[ListNode]) -> Optional[ListNode]:
        if not head:
            return head
        curr = head
        while curr.next:
            if curr.val == curr.next.val:
                curr.next = curr.next.next
            else:
                curr = curr.next
        return head

2. 柱状图中最大的矩形
给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。
求在该柱状图中,能够勾勒出来的矩形的最大面积。

class Solution:
    def largestRectangleArea(self, heights: List[int]) -> int:
        stack = []
        heights = [0] + heights + [0]
        max_area = 0

        for i, height in enumerate(heights):
            while stack and height < heights[stack[-1]]:
                mid = stack.pop()
                left = stack[-1]
                right = i
                width = right - left - 1
                max_area = max(max_area, width * heights[mid])
            stack.append(i)

        return max_area

标签:head,curr,max,Study,heights,Algorithms,Plan,next,stack
From: https://www.cnblogs.com/stephenxiong001/p/18431065

相关文章

  • Business Analytics Case Study
    BusinessAnalyticsCaseStudyCaseDescriptionThefinalbusinessanalyticscasestudyhas two components: a) data transformation with SSIS and b) predictive analysiswithRapidMiner.Bothtasksarebasedonindividualflight experiences from......
  • Redis_study_01
    Redis十大基本数据类型总览:数据类型是指value的数据类型,key的数据类型固定为StringRedis命令不区分大小写,但是key区分大小写,因为key是唯一的都是一些命令,不懂的直接在官网上搜,里面的参数都有解释https://redis.io/docs/latest/commands例如String里面的setSETke......
  • Fall 2024 IE 360 Facilities Planning and Design
    Fall2024IE360FacilitiesPlanningandDesign  Homework1Name: Clickortapheretoentertext.        StudentID:Clickortapheretoentertext. Question1:(60pts)Anautomobileenginecylindermanufacturingcompanyplanstoman......
  • contemplate、consider、study和weigh的区别
    contemplate、consider、study和weigh都表示经过思考而做出决定的意思。他们的区别在于:contemplate强调思考的过程本身。consider强调思考后做出的决定。study强调决定是通过严谨的研究的。weigh强调决定时在几个选项中进行了权衡。 具体的例子: herefusedeventocon......
  • CRICOS Data Structures and Algorithms Trees
    DataStructuresandAlgorithmsTreesPage1of3CRICOSProvideCode:00301JNote:DSATreeNodehasalreadybeenwrittenforyou,butyou’llneedtounderstandandtestit.Thecodeforfind()wasalreadyimplementedforyou-insert()anddelete()are......
  • Study Plan For Algorithms - Part35
    1.x的平方根给定一个非负整数x,计算并返回x的算术平方根。classSolution:defmySqrt(self,x:int)->int:ifx==0:return0left,right=1,xwhileleft<=right:mid=left+(right-left)//2......
  • Study Plan For Algorithms - Part36
    1.简化路径给定一个字符串path,表示指向某一文件或目录的Unix风格绝对路径(以'/'开头),请将其转化为更加简洁的规范路径。在Unix风格的文件系统中规则如下:一个点'.'表示当前目录本身。此外,两个点'..'表示将目录切换到上一级(指向父目录)。任意多个连续的斜杠(即,'//......
  • Study Plan For Algorithms - Part34
    1.二进制求和给定两个二进制字符串a和b,以二进制字符串的形式返回它们的和。classSolution:defaddBinary(self,a:str,b:str)->str:i=len(a)-1j=len(b)-1carry=0result=[]whilei>=0orj>=0or......
  • Study Plan For Algorithms - Part33
    1.和为s的两个数字输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。方法一:deftwoSum(nums,target):left=0right=len(nums)-1whileTrue:res=nums[left]+nums[right]ifres==target:......
  • 从Shopping Plans谈起的一类的经典 kth 问题
    一类kth相关问题​ 实际上,这个trick以及其拓展在去年noip级别的模拟赛已经用到了多次,但是认知仅局限于“用优先队列”解决的一类题目,有时可以直接建立最短路模型。在去年一场nfls中甚至因为知道此trick而在最后一题狂砍50分,今天在dmy再遇,故整理其成体系。T4控制......