算法实践-最大数量活动选择-贪心算法

活动安排(贪心算法)C/C++ 题目描述 有n份兼职,每份兼职有一个开始时间和一个结束时间,假设你的空闲时间为从1到m,假如你的休息时间可以忽略, 请你选择若干份兼职(每次只能做其中一个兼职),使你在该段空闲时间内完成的兼职份数最大。 输入 第一行为两个整数n,m分别表示n份兼职,空闲时间为1到m(1<=n<=1e4,1<=m<=1e5)。 接下来n行每行有2个整数a,b。表示该兼职开始和结束时间(1<=a<=b<=m)。 输出 输出你在1到m时间段内最多能完成几份兼职。 样例输入 4 10 1 阅读详情

发布一个k8s部署视频:https://edu.youkuaiyun.com/course/detail/26967

课程内容:各种k8s部署方式。包括minikube部署,kubeadm部署,kubeasz部署,rancher部署,k3s部署。包括开发测试环境部署k8s,和生产环境部署k8s。

腾讯课堂连接地址https://ke.qq.com/course/478827?taid=4373109931462251&tuin=ba64518

第二个视频发布  https://edu.youkuaiyun.com/course/detail/27109

腾讯课堂连接地址https://ke.qq.com/course/484107?tuin=ba64518

介绍主要的k8s资源的使用配置和命令。包括configmap,pod,service,replicaset,namespace,deployment,daemonset,ingress,pv,pvc,sc,role,rolebinding,clusterrole,clusterrolebinding,secret,serviceaccount,statefulset,job,cronjob,podDisruptionbudget,podSecurityPolicy,networkPolicy,resourceQuota,limitrange,endpoint,event,conponentstatus,node,apiservice,controllerRevision等。

第三个视频发布:https://edu.youkuaiyun.com/course/detail/27574

详细介绍helm命令,学习helm chart语法,编写helm chart。深入分析各项目源码,学习编写helm插件
————————————————------------------------------------------------------------------------------------------------------------------

package com.greedy;

public class ActivitySelect {
	private int[][]activity;
	private int[][]select;
	private int index;
	public ActivitySelect(int[][]activity){
		this.activity=activity;
		select=new int[activity.length][2];
		
	}
	public void activitySelector(){
		inneractivitySelector(0);
		printActivity();
	}
	private void inneractivitySelector(int start){
		int m=start+1;
		if(m==activity.length){
			select[index][0]=activity[start][0];
			select[index][1]=activity[start][1];
		}else{
			while(m<activity.length&&activity[m][0]<activity[start][1]){
				m=m+1;
			}
			if(m<activity.length){
				select[index][0]=activity[start][0];
				select[index][1]=activity[start][1];
				index=index+1;
				inneractivitySelector(m);
			}
		}
		
	}
	public void printActivity(){
		for(int i=0;i<select.length;i++){
			if(select[i][0]==0){
				break;
			}
			System.out.print("("+select[i][0]+","+select[i][1]+") ");
		}
		System.out.println();
	}
	public static void main(String[] args) {
		int[][]activity=new int[][]{
				{1,4},
				{3,5},
				{0,6},
				{5,7},
				{3,9},
				{5,9},
				{6,10},
				{8,11},
				{8,12},
				{2,14},
				{12,16}
		};
		ActivitySelect select=new ActivitySelect(activity);
		select.activitySelector();

	}

}

活动以结束时间升序排列

 

JAVA代码—算法基础:贪心算法在活动安排问题中的应用 贪心算法在活动安排问题中的应用 问题描述 有若干个活动,第i个开始时间和结束时间是[Si,fi),只有一个活动场地可以利用,活动之间不能交叠,求最多安排多少个活动? 问题分析 活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用... 阅读详情

相关推荐

活动安排问题-贪心算法

贪心算法:贪心算法总是做出在当前看来最好的选择,也就是贪心算法不从整体最优化的角度考虑。它所做出的选择只是在某种意义上的局部最优选择 性质:最优子结构性质当一个问题的最优解包含其子问题的最优解时,称此问题具有最优子结构性质 与动态规划的差异:贪心算法从局部出发,每一次得到的最优解,在考虑求解最优解的时候沿用上一次的最优解,之前的最优解不做保留。动态规划从全局出发,全局最优解中一定包含某个局部最

叫我小雷雷就好 4191

最多安排活动数 —— 贪心算法

问题描述:                有个叫做“嘻哈华”的同学,他所在的学校将举办一次活动,现在他想知道一个教室最多能安排                的活动数?现在告诉他活动开始时间与结束时间,问:最多活动数?源代码:#include &lt;iostream&gt; #include &lt;algorithm&gt; #define M 100 struct AAA{ int beg...

嘻哈少华 2018

【贪心算法类】C,C++写活动选择问题

活动选择问题是一个经典的调度问题,旨在从一组活动中选择出尽可能多的互不重叠的活动。该问题可以通过贪心算法有效解决。给定一组活动,每个活动都有一个开始时间和结束时间。我们的目标是选择最大数量的活动,使得这些活动互不重叠。通过对活动选择问题的深入分析和实现,学习者可以掌握贪心算法的应用,提升解决实际问题的能力。

Oo1101oO的博客 1258

选择有限时间内最多的活动数 贪心

题目: 有n个需要在同一天使用同一个教室的活动a1,a2,…,an,教室同一时刻只能由一个活动使用。 每个活动ai都有一个开始时间si和结束时间fi 。一旦被选择后,活动ai就占据半开时间区间[si,fi)。 如果[si,fi]和[sj,fj]互不重叠,ai和aj两个活动就可以被安排在这一天。 该问题就是要安排这些活动使得尽量多的活动能不冲突的举行。 例如下图所示的活动集合S,其中各项活动按照结束...

每个人都是独一无二的,把握好自己的节奏,跟着自己的心走。 1824

算法与数据结构:最小-最大堆与贪心算法的实践

本文深入探讨了最小-最大堆的原理及其在贪心算法中的应用。通过分析具体的算法实现,如寻找上下交替排列序列、分数背包问题的求解、活动选择问题以及最小处理器数量问题的解决方案,文章揭示了堆数据结构在优化计算复杂度方面的强大功能。同时,通过实际案例展示了算法的应用,并对算法的时间复杂度进行了详细分析。

weixin_42143092的博客 486

DVWA靶场实战:从搭建到渗透测试的完整指南

本文详细介绍了DVWA靶场的搭建与渗透测试全流程,涵盖LAMP环境搭建、Docker部署及集成环境安装三种方式。通过SQL注入、文件上传漏洞等实战案例,帮助读者掌握Web安全测试技巧,并提供防御方案与进阶调优建议,是网络安全学习的实用指南。

weixin_28312391的博客 490

活动选择问题(活动安排问题)(最大数目活动选择问题)贪心算法C++实现

// 活动选择问题(活动安排问题)(最大数目活动选择问题).cpp : Defines the entry point for the console application. //贪心算法 #include "stdafx.h" #include&lt;iostream&gt; #define N 100 using namespace std; struct Activity {...

pleasetojava 1002

Nordic nRF52832实战:手把手教你搭建智能手环BLE通信框架(附完整代码)

本文详细介绍了如何使用Nordic nRF52832芯片搭建智能手环的BLE通信框架,涵盖芯片优势、协议栈初始化、低功耗广播策略及健康数据服务实现。通过完整代码示例和架构设计,帮助开发者快速掌握蓝牙低功耗通信技术,适用于可穿戴设备开发。

weixin_29192141的博客 249

贪心算法求解最大安排相容活动个数,时间管理符合最优解求法

问题描述: 假设有n个活动的集合E={a1,a2,…,an},其每个活动都要求使用同一资源(如某个设备、教室、场地等),而在同一时间内只允许一个活动使用这一资源。 每个活动都有一个要求使用该资源的起止时间si,fi,且si<fi。如果选择了活动ai,则它在半开的时间区间[si,fi)内占有资源。两个活动ai,aj称为是相容的,当且仅当它们的时间区间[si,fi)和[sj,fj)不相交,即si>=fj 或 sj >=fi。现要求在所给定的活动集中选出最大的相容活动子集。(提示:贪心策略) 主

huangdxian的博客 2061

如何利用ADS中的耦合线设计带通滤波器并转换为HFSS模型

耦合线带通滤波器是一种常用的微带滤波器形式,由多个长度为四分之一波长的耦合线节组成,在所需频点形成谐振,构成滤波器的频率响应特性。首先我们先来了解一下耦合线带通滤波器的电路结构,见下图:包括两对耦合线,中间为公共连接点,其中两对耦合线的偶奇模阻抗为(Z1e,Z1o)和(Z2e,Z2o,端口输入阻抗为Z0)。2.指定一个初始奇偶模值,ADS优化出一个合适的结果,通过奇偶模值利用linecalc工具计算出微带耦合线尺寸。假设中心频率为2GHz,则对应频点的电长度为。5.运行结果,两个软件仿真结果基本一致。

auqihc的博客 2230

ElectrolyteGPT:首个电池电解液逆向设计的生成式 AI 系统 —— 算法原理与复现解析

数据驱动的重要性:1100 万→100 万的精心筛选,比单纯增大模型更有效领域适配:fLine 表示法、正则分词、化学感知的数据增强(SMILES randomization)都是关键小模型的力量:6M 参数在特定化学空间的表现,远超通用大模型在相同任务上的零样本能力条件生成的极限:10 维条件导致模型崩溃,提示我们需要更好的条件编码策略(如 diffusion guidance、RLHF-style 偏好优化)未来方向配方实验验证。

ASKCOS博客 124

贪心算法之最大相容活动子集合问题

问题:     有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi,且si &lt;fi 。如果选择了活动i,则它在半开时间区间[si, fi]内占用资源。若区间[si, fi]与区间[sj, fj]不相交,则称活动i与活动j是相容的。也就是说,当si≥fj...

xiao785799675的博客 9011

Python爬虫实战:使用最新技术爬取新浪新闻首页数据

本文详细介绍了三种爬取新浪新闻首页的技术方案,从简单的requests-html到强大的Playwright,再到分布式Scrapy架构。小规模爬取:requests-html或aiohttp方案需要JavaScript渲染:Playwright方案大规模分布式爬取:Scrapy-Redis方案。

2201_76125261的博客 1244

贪心算法之线段重合问题

Description 数轴上有 n 条线段,选取其中 k 条线段使得这 k 条线段两两没有重合部分,问 k 最大为多少。 Input 多组测试数据,每组测试数据的输入格式描述如下: 第一行为一个正整数 n,n≤10^6; 在接下来的 n 行中,每行有 2 个数 ai, bi ,描述每条线段,0≤ai <bi ≤10^6 。 Output 每组测试数据的输出占一行,...

小Tian的博客 1791

PCL Fast Global Registration 快速全局配准(源码版)

Fast Global Registration(FGR)是一种经典的点云粗配准算法,已集成到Open3D和CloudCompare等软件中。本文介绍了该算法的源码实现及优化方法,包括如何通过修改源码直接读取点云进行配准,而不依赖文件中读取特征描述子。文章还提供了关键参数设置(如最大迭代次数、匹配距离等)。算法实现简单高效,未来计划发布基于纯PCL的版本。源码和论文链接已附上,供开发者参考。

点云侠的博客 383

[QMT量化交易小白入门]-四、如何筛选优质可转债,并进行下单操作

通过上述步骤,成功地使用Python代码完成了可转债的筛选、数据处理和下单操作。当然,这只是一个基础的示例,实际投资中还需要考虑更多因素,如市场环境、资金管理、风险控制等。希望本文能为各位投资者提供一些有价值的参考,助力大家在投资道路上走得更远。

木头大左的博客 1733

【NYOJ - 14】会场安排问题

点击打开链接 会场安排问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排。

acquiesce 379

BiSeNet:面向实时语义分割的双边网络

BiSeNet 系列重新定义了实时语义分割的范式“不要在速度和精度之间妥协——用架构创新,两者兼得。V1:提出双边解耦思想,启发后续大量工作;V2:通过极致轻量化,证明小模型也能高精度;V3(工业版):推动端侧 AI 落地,成为行业标准之一。如今,BiSeNet 已成为嵌入式视觉系统的默认选择,其设计理念(解耦、轻量、融合)被广泛应用于目标检测、姿态估计等领域。

浩瀚之水的专栏 268

0021算法笔记——【贪心算法】贪心算法与活动安排问题

1、贪心算法      (1)原理:在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解。       (2)特性:贪心算法采用自顶向下,以迭代的方法做出相继的贪心选择,每做一次贪心选择就将所求问题简化为一个规模更小

liufeng_king的专栏 7万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

贪心算法之活动安排问题

活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用公共资源。 问题描述 设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起...

practical_sharp的博客 1万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

基于贪心算法的活动安排问题

一.问题的描述 学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。 现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排才可以安排更多的活动。 具体的示例如下所示: 二.问题的分析 1.贪心算法的基本思想: 贪心算法在对问题进行求解的时候,总是做出当前看来是最好的选择,它会不从整体的最优进行考虑,而是得到在某种意义上的局部最优解,而且贪心算法不是对所有的问题都能得到整体的最优

qq_45611259的博客 3594

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

基于活动选择问题的贪心算法

问题描述: Coda从0时刻开始观看直播,到tt时刻结束。一共有n场直播可被选择,已知所有直播场次的起止时间和主播名称,其中第i场直播从ai​时刻开始,bi​时刻结束,主播名称为ci​,每场直播的起始时间和结束时间都是整点(不保证所有直播全程都在Coda观看的时间段内)。Coda同时只能观看一场直播,并且必须看完正在观看的直播,才能选择下一场尚未开始的直播。 请求出Coda在这段时间内最多能观看几场直播,并按照观看顺序输出观看的每个主播的名称。 输入格式 第一行包含两个整数nn和tt,分别表示已

FunkyCode的博客 1958

算法学习笔记:23.贪心算法之活动选择问题 ——从原理到实战,涵盖 LeetCode 与考研 408 例题

《贪心算法解活动选择问题全攻略》摘要:活动选择问题是贪心算法的经典应用,要求在有限资源下选择最多互不冲突的活动。本文详细解析了贪心策略的核心思路(选择结束最早活动)、算法步骤及正确性证明,并通过LeetCode例题(435无重叠区间、646最长数对链)和考研408真题进行实战演示。文章还探讨了资源约束下的扩展解法,分析了时间复杂度(O(nlogn)),并提供了Java实现代码。最后总结了该算法在会议安排、任务调度等场景的应用价值,强调掌握贪心选择性质和最优子结构的重要性。

CSBIGDOG的博客 1760

贪心算法解决活动选择问题:最多不重叠活动数量求解

活动选择问题是贪心算法的典型应用,核心在于 “优先选择最早结束的活动” 这一局部最优策略。本文的实现通过清晰的数据组织、严格的输入校验和高效的排序筛选逻辑,确保了代码的正确性和可读性。该解法不仅适用于经典的活动选择场景,还可扩展到类似问题(如会议安排、任务调度等),只需将 “活动” 替换为对应的场景实体(如会议、任务),逻辑完全复用。

2301_80567637的博客 805

活动选择问题 (贪心算法)

题目: 假定有集合S个活动S={a1,a2,a2...an},对于每个活动的开始与结束时间为s={s1,s2,s3...sn},f={f1,f2,f3..fn};求在不重复时间段里可以利用的场地最大化(活动最多)的解。 而我们使用贪心算法就是将大事化小,小事化了的方式去解决问题,对于本题我们有三种思路去小事化:(网上资料图) 但我们会发现前两种策略显然不是最优,都会有反例可以推翻,那么第三种如何得出符合我们的要求呢? 显然由图可知,我们可以先对结束之间进行排序(开始时间相对应一起),那么..

weixin_51638679的博客 6042
上一篇: DataFu在Apache进入孵化状态
下一篇: 算法实践篇-哈夫曼编码-贪心算法
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hxpjava1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值