社区
数据结构与算法
帖子详情
求助:一个有应用背景的算法
gofor
2004-10-10 06:38:20
一个m*n矩阵,其元素值为0或1,且任意两行和两列的四个交叉元素不全为1。
以行序为主序顺序存储该矩阵时,可以把该矩阵看成一个二进制数。
假设任意两行可交换,任意两列可交换,请设计一个算法通过行交换和列交换,使这个二进制数达到最大。要求时间复杂度为多项式级。
...全文
276
17
打赏
收藏
求助:一个有应用背景的算法
一个m*n矩阵,其元素值为0或1,且任意两行和两列的四个交叉元素不全为1。 以行序为主序顺序存储该矩阵时,可以把该矩阵看成一个二进制数。 假设任意两行可交换,任意两列可交换,请设计一个算法通过行交换和列交换,使这个二进制数达到最大。要求时间复杂度为多项式级。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
conghonglei
2004-10-27
打赏
举报
回复
问题的复杂只在于 如何找出第一行第一列
其中利用 任意两行和两列的四个交叉元素不全为1 这个条件是十分重要的
1 11..........11 000000 0000..000...
1 111..1 000..0000...
1 全部为0 0同理0 11...10...
1 具体列的顺序 00...0 0同理01..10
1 由第二部分确定 000000000000000001.. 10...
1 000000 000000 00000000011..1000
0 ------------------------------
1 |第二部分
conghonglei
2004-10-26
打赏
举报
回复
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | ....
< 首位为1 >< 首位为0....
首先确定第一个数字。(假设已有办法可确定)
确定后分为两部:[1,5), [5...]
以行数小的为优先,确定列的位置。
先求出第一部分
由于 任意两行和两列的四个交叉元素不全为1,其余部分只是计算1的个数而已,对于个数相同的,
由相应的 首位为 0 的确定。
在最后记录下,有哪些列的位置没有确定
第二部分
因为部分列已被确定,有局限,但基本上还是一个递归。
gofor
2004-10-26
打赏
举报
回复
第一步,显然是找出最多1的行,通过“行交换”到第1行;再通过“列交换”把第1行的元素1集中到最左边。如果最多1的行有多个,只能每行分别试了。
同上帖,现在除了第1行元素已经确定,剩下的矩阵被分成左右两部分。
第二步,接下来,似乎可以进一步一分为四,左部分中有1的行显然应该放交换到最上面,如此可分为如下四部分:
111.....1 000.......0 ---这是第1行
------------
|第I部分
单1 | ??
|
------------
|第II部分
全0 | ??
|
“单1”部分每行有且只有一个1
第I部分的划分似乎与第一步类似,但不是。这一部分只能如此
111.....1 000.......0 ---这是原第2行
------------
| |
单1|全0 | ?? ---这是原第I部分
| |
------------
| |第II部分
全0|单1 | ?? ---这是原第II部分
| |
问题复杂了,我头大了..... :(
gofor
2004-10-25
打赏
举报
回复
我也希望写出一个清晰的递归过程,但问题远非conghongler所说的那么简单,whycadi提出的算法似乎只是开始。
conghonglei
2004-10-25
打赏
举报
回复
第一个数是可以确定的,行1最多的那个,如果有行相同多个1,则按列最多1确定第一行第一列。
由此分为两部分,第一位为1的,和0 的。然后递归。
确定第一行第一列实际也是一个递归的过程。
个人见解,供大家参考。
mathe
2004-10-24
打赏
举报
回复
whycadi(保护视力)的方法已经说明的很清楚了,就剩一些补补丁丁可做了,该结贴了。
gofor
2004-10-22
打赏
举报
回复
还有人对这个问题有兴趣吗?:(
如果这个帖子落到第3页,我就结贴,参与讨论者都有分。
zzwu
2004-10-22
打赏
举报
回复
已经没有更多的可说了.
zzwu
2004-10-22
打赏
举报
回复
同意whycadi(保护视力)的做法.
gofor
2004-10-13
打赏
举报
回复
等待中...
sten
2004-10-11
打赏
举报
回复
我先分析一下:)
在同一正方形(指的是如 1 0 的形式)不能同时为 1 ,且在相邻两行(列)中,不能
0 1
出现有两列(行)相同的 1 ( 1 0 0 0 1 1 1 )这样是不允许的,因为平移后会出现前一种情
1 0 1 0 0 0 1
况.不知对各位有没有帮助,剩下的思考中......!
gofor
2004-10-11
打赏
举报
回复
谢谢各位的参与,我有7000多分,给本贴的参与者我都会给分,对有价值的发言,我不会吝啬分数的:-)
whycadi的算法我是考虑过的,他漏了一种情况,就是每列中为1的元素可能不止两个,可能是受了我给的例子的误导。而且这个算法的时间复杂度是多项式级的吗?
不过,不妨把这个问题简化,就是再加一个限制条件:即每列中为1元素有且只有两个。
我举的例子中,变换所得的结果不是最大数,最大数应是:
1 1 0 0 0
1 0 1 0 0
1 0 0 1 0
1 0 0 0 1
0 1 1 0 0
0 1 0 1 0
0 0 1 0 1
另外,我希望哪位最好用高级语言写出完整算法:-)
whycadi
2004-10-11
打赏
举报
回复
先找1最多的一行(假设有A个1),把它移到第一行,并把所有的1移到最前面的列。由条件可知,其它各行在移到以后,前面A列中都只有最多1个1。然后找这些行前面A列有1,后几列中1最多的一行(假设有B个),把它移到等二行,把前面A列中为1的那一列移到第一列,把A列以后的B个有1的列移到从A+1列开始的B列,然后找在前A+B列1最多(最多两个)并且后面列中1最多的一行放到第三行…………以下过程类似。
如果某一步有多行的1数目相等,就分别选一行放在前面走几步,每走一步比较一下,比出大小来就选大的那一种走下去。
skystar99047
2004-10-11
打赏
举报
回复
问大学学生或老师,很快会有答案的,俺大学里学的线性代数和高等数学已经忘得差不多了。
gofor
2004-10-11
打赏
举报
回复
比如如下矩阵:
0 1 1 0 0
1 0 1 0 0
1 1 0 0 0
0 1 0 0 1
0 0 1 1 0
1 0 0 1 0
1 0 0 0 1
通过适当的行交换、列交换,可变成
1 1 0 0 0
1 0 1 0 0
1 0 0 0 1
1 0 0 1 0
0 1 1 0 0
0 1 0 1 0
0 0 1 0 1
按行主序顺序存储(即写第一行元素,再写第二行元素,...),则为二进制数:11000101001000110010011000101000101
求:设计一个算法,通过行交换、列交换,使这个数最大。
zzwu
2004-10-11
打赏
举报
回复
语言描述不容易看,请举一个具体例子先.
101monster
2004-10-10
打赏
举报
回复
呵呵,UP!
SERL——针对真机高效采样的RL系统:基于图像观测和RLPD
算法
等,开启少量演示下的RL精密插拔之路(含插入基准FMB的详解)
本文系统梳理了机器人强化学习框架SERL及其相关技术发展脉络。研究始于RLDG复现需求,回溯至其基础HIL-SERL框架,进而解析其核心
算法
RLPD(2023),并延伸至SERL(2024)前身工作。文章重点分析了SERL框架的创新性:1)整合了高样本效率的RLPD
算法
;2)提供图像观测兼容的奖励指定方法;3)实现自动任务重置机制;4)开发通用机器人适配接口。研究特别强调,SERL通过精心设计的实现细节(如阻抗控制器、高UTD比训练)在15-60分钟内完成复杂操作任务训练,验证了现有
算法
经优化后可达实用效率
「
算法
宇宙」:全新科研
算法
学习平台,重磅上线!
大家好,我还是那个熟悉的老朋友——小进。在技术社区摸爬滚打的这些年,我深切地感受到,无论是初入茅庐的学生,还是身经百战的工程师、科研人员,在面对“
算法
学习”这座大山时,或多或少都会遇到一些困境
电影个性化推荐
算法
工程师系统——“智能影享”
产品名称:电影个性化推荐
算法
工程师系统——“智能影享”主要功能:一、智能推荐
算法
功能介绍:基于用户观影历史、偏好、行为等数据,通过人工智能
算法
进行深度学习和分析,为用户提供个性化的电影推荐。用户无需在海量的影片中寻找感兴趣的内容,系统会根据用户的喜好自动推荐符合口味的电影。二、影片分析与管理功能介绍:系统能够分析影片的各类数据,包括票房、口碑、导演、演员等,为电影推荐提供数据支持。同时,也能根据市场趋势和用户需求,对推荐策略进行实时调整。三、智能推荐优化与调整。
2025年大语言模型十大突破:从推理模型到GRPO
算法
,小白也能看懂的进阶指南
2025年大语言模型领域迎来重大突破,DeepSeek R1提出的RLVR(可验证奖励强化学习)与GRPO
算法
成为年度焦点。该技术通过确定性验证机制,显著提升了模型在数学和代码领域的推理能力,训练成本远低于预期(仅29.4万美元)。模型架构持续优化,推理扩展和工具使用成为性能提升的关键路径。尽管基准测试存在局限,LLM在编程、写作和科研等领域的赋能作用日益凸显。展望未来,RLVR将拓展至更多领域,持续学习和推理时扩展(如自洽性与自我精炼)将成为重要研究方向,而GRPO
算法
也成为学术界关注热点。
【目标跟踪】基于蒙特卡洛
算法
JPADFJ两个有杂波的目标跟踪附Matlab代码
目标跟踪是计算机视觉领域中的
一个
核心问题,其目标是在视频序列中识别并跟踪特定目标的轨迹。在实际
应用
中,目标跟踪常常面临诸多挑战,例如目标遮挡、光照变化、
背景
杂波以及目标外观变化等。本文将重点讨论在存在
背景
杂波的情况下,如何利用蒙特卡洛
算法
对JPADFJ(假设JPADFJ是
一个
特定的目标运动模型,文中将对其特性进行假设性描述)模型下的两个目标进行有效跟踪。JPADFJ模型,我们假设其是
一个
结合了Jump Markov系统和非线性动力学系统的目标运动模型。
数据结构与算法
33,028
社区成员
35,336
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章