首页 > 编程语言 >贪心算法--活动选择问题

贪心算法--活动选择问题

时间:2023-08-19 11:12:22浏览次数:58  
标签:activities selection -- res 算法 12 活动 贪心

博客地址:https://www.cnblogs.com/zylyehuo/

# -*- coding: utf-8 -*-


def activity_selection(a):
    res = [a[0]]
    for i in range(1, len(a)):
        if a[i][0] >= res[-1][1]:  # 当前活动的开始时间小于等于最后一个入选活动的结束时间
            # 不冲突
            res.append(a[i])
    return res


# 活动元组(开始时间,结束时间)
activities = [(1, 4), (3, 5), (0, 6), (5, 7), (3, 9), (5, 9), (6, 10), (8, 11), (8, 12), (2, 14), (12, 16)]
# 保证活动是按照结束时间排好序的
activities.sort(key=lambda x: x[1])

print(activity_selection(activities))

标签:activities,selection,--,res,算法,12,活动,贪心
From: https://www.cnblogs.com/zylyehuo/p/17642181.html

相关文章

  • 项目制造企业购买软件的指南与秘密[转译]
    在当今充满挑战的商业环境中,中型制造商面临着来自国内外竞争的越来越大的压力——降低成本、提高和保持质量以及缩短交货时间的压力。大型装备的设计师和建造者面临着特殊的挑战,因为他们建造的产品非常复杂,而且这种基于项目的、按订单设计(ETO)环境的独特要求。如今,公司......
  • git 一行显示 commit-ID 分支名 提交说明
    一、一行显示commit-ID分支名提交说明branch_name=`gitbranch--show-current`;curr_commit_ID=`gitlog-1--format="%H%s"`;echo"$branch_name$curr_commit_ID"二、%H%s更多的参数说明:https://www.cnblogs.com/wutou/p/17538388.html......
  • Redis分布式锁笔记
    1redis分布式锁实现原理所谓分布式锁,应当基本如下几项核心性质:• 独占性:对于同一把锁,在同一时刻只能被一个取锁方占有,这是锁最基础的一项特征• 健壮性:即不能产生死锁(deadlock).假如某个占有锁的使用方因为宕机而无法主动执行解锁动作,锁也应该能够被正常传承下去,被其......
  • 本科生、硕士生、博士生、博士后
    让本科、硕士和博士分别炒一盘回锅肉。本科生找了一张菜谱,买了需要的食材和酱料,照着菜谱炒出来了。硕士生找了一些菜谱,进行了调研并且比较了不同菜谱的区别,选择了几个食材供应商进行对比,最后炒出了回锅肉并且写了一篇炒回锅肉的报告。博士回去进行了大量的调研,历时半年提交了一份......
  • UWB精确定位问题(TOA定位(三维空间四点定位)matlab实现)
    一、原理方法四点定位(Four-AnchorPositioning)是一种基于距离测量的定位方法,通常采用TOA方法来计算目标物体到每个基站的距离。通过测量目标物体到至少四个基站的距离,并利用三角定位等算法计算出目标物体的位置。因此,四点定位属于TOA定位方法的一种。在UWB精确定位中,四点定位(Four-A......
  • 云原生之使用Docker部署开源Leanote蚂蚁笔记
    (云原生之使用Docker部署开源Leanote蚂蚁笔记)一、Leanote蚂蚁笔记介绍1.Leanote简介Leanote蚂蚁笔记是一款云笔记工具,蚂蚁笔记(又名LeaNote)就是一款国产开源的私有云笔记软件。它支持普通格式笔记、Markdown语法、专业数学公式编辑、和思维脑图,常见的笔记相关功能它都拥有,同时......
  • GE光纤反射内存卡
    高性能光纤网络我们的光纤网络模块提供高性能和可靠性,适用于许多不同的应用。以下是该模块的一些主要特点和规格:板载128Mbyte/256MByte内存,为您提供强大的数据存储和处理能力。错误检测功能,确保数据传输的准确性和完整性。高速光纤网络波特率可达2.125G,提供极高的数据传输速率。数......
  • 中学生考试管理系统的设计与实现-计算机毕业设计源码+LW文档
    摘要随着信息技术的发展,管理系统越来越成熟,各种企事业单位使用各种类型的管理系统来提高工作效率,从而降低手工操作的弊端。我国政府一直以来都非常重视中学阶段教育的发展,近几年来学生人数逐渐增加,对在线考试的需求越来越多。因此,通过开发中学生考试管理系统来提高学习效率,增强考......
  • centos7使用yum网络安装
    创建一个空文件data首先进入/etc/yum.repos.d将原来文件转移走,如下cd/etc/yum.repos.dmv ./* /date在编辑一个repo结尾的文件vimcentos.repo然后使用windows浏览器输入阿里https://mirrors.aliyun.com/repo/下载centos-7.repo下载好了用记事本打开,复制粘贴到centos.repo文件......
  • 基于SSM技术的心理学网站系统设计与实现-计算机毕业设计源码+LW文档
    一、选题背景及意义随着信息化社会的形成和微电子技术日新月异的发展,为开发心理学网站系统提供了良好的环境。在当前的技术和社会需求环境下,心理学网站系统将具有长足的发展。特别是在互联网高度发展和应用的今天,随着心理关爱需求的越来越多,也正因此,心理学网站系统应运而生,可以为......