社区
数据结构与算法
帖子详情
求一个easy算法,简单调整位置
guogangj
2010-11-24 02:29:49
class CItem
{
BYTE blah[HUGE];
};
CItem data[5];
INT reposition[5] = {4,2,0,3,1};
要求,根据repositon的内容调整dt的内容,如上,把原来下标4的元素调到0,把原来下标2的元素调到1。
写个算法,复杂度为O(n),还要尽量节省空间,因为HUGE可以很大,并且data可能远远不止5个元素。
...全文
155
8
打赏
收藏
求一个easy算法,简单调整位置
class CItem { BYTE blah[HUGE]; }; CItem data[5]; INT reposition[5] = {4,2,0,3,1}; 要求,根据repositon的内容调整dt的内容,如上,把原来下标4的元素调到0,把原来下标2的元素调到1。 写个算法,复杂度为O(n),还要尽量节省空间,因为HUGE可以很大,并且data可能远远不止5个元素。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
guogangj
2010-11-27
打赏
举报
回复
我总结了一下,代码贴这里:
http://www.cppblog.com/guogangj/archive/2010/11/27/134843.html
guogangj
2010-11-25
打赏
举报
回复
to asmlearn
你是说递归吗?最好能贴一下代码,不过递归可是需要在程序栈区中复制代码的,递归了太多层的话会导致栈溢出,这也不是一种节省空间的做法。
guogangj
2010-11-25
打赏
举报
回复
呵呵,假如就有这么一道题目,需要节省内存,该怎么做?
一个嵌入式的环境,往往真的不能动态分配出一大块的内存来哦。
donkey301
2010-11-25
打赏
举报
回复
保证下一次的Distination是上一次的Source,这样只要一个临时变量就行了
譬如:
CItem Temp;
Source Distination
0 --> Temp
4 --> 0
1 --> 4
2 --> 1
Temp --> 2
3 --> Temp
...
Temp --> ..
pmars
2010-11-24
打赏
举报
回复
[Quote=引用 3 楼 pmars 的回复:]
开大数组不行么?
CItem array[MAX] ;
for : array[i] = data[reposition[i]] ; //数据类型好像不协调哈!
for : data[i] = array[i] ;
[/Quote]
呵呵,array为CItem类型的啊!
pmars
2010-11-24
打赏
举报
回复
[Quote=引用楼主 guogangj 的回复:]
class CItem
{
BYTE blah[HUGE];
};
CItem data[5];
INT reposition[5] = {4,2,0,3,1};
要求,根据repositon的内容调整dt的内容,如上,把原来下标4的元素调到0,把原来下标2的元素调到1。
写个算法,复杂度为O(n),还要尽量节省空间,因为HUGE可以很大,并且data可能远远不止5个……
[/Quote]
开大数组不行么?
int array[MAX] ;
for : array[i] = data[reposition[i]] ; //数据类型好像不协调哈!
for : data[i] = array[i] ;
donkey301
2010-11-24
打赏
举报
回复
为什么不用指针呢?这样只要交换指针地址就行了,没必要交换内容的。
asmlearn
2010-11-24
打赏
举报
回复
1、写一个交换函数,入口参数为要交换的两个下标索引。
2、依次处理数组每个元素,将当前索引和元素值作为参数传给上一个交换函数。
至于节省空间可能要用到动态分配,不过现在内存芯片动不动就上G,开个大数组也没关系吧。
Easy
MCS Gomoku:五子棋AI-开源
蒙特卡洛(Monte Carlo)与Piskvork一起使用Gomoku AI搜索。
简单
易玩。 该AI仅支持自由风格的gomoku,并且没有任何禁令。
有效背单词的
一个
简单
算法
(一)——SugarMemo
算法
学习记录
看了著名的Palm上的背单词软件SugarMemo已经把源代码放出了 知道其中采用了国外的那个著名的SuperMemo的早先的
一个
算法
(SM2)来记忆单词. 因为操作非常之
简单
,而且记忆效果也不错, 所以有想法把这个软件移植到PSP上,也是通过
简单
的几个键的操作方便对单词的记忆 现记录简要的过程如下: SugarMemo(我下面简称Sugar)的改进在于,通过一组测试,来
给定数组
求
和等于固定值
算法
_这道
算法
题太太太太太
简单
啦
今天分享一道很
简单
的
算法
题。题目来源于 LeetCode 上第 268 号问题:缺失数字。题目难度为
Easy
,目前通过率为 50.2% 。题目描述给定
一个
包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。说明:你的
算法
应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?题目解析这道题目有三种解法。解法一:异或法 和之前那道 只出现一次的...
PID
算法
原理 一图看懂PID的三个参数
找了好久这一篇算是很容易看懂的了 推荐给大家 写的十分清楚 原文作者DF创客社区virtualwiz LZ以前有个小小的理想,就是让手边的MCU自己“思考”起来,写出真正带
算法
的程序。前段时间做
一个
比赛项目的过程中,对经典、实用的PID
算法
有了一点点自己的理解,就写了这些,与大家分享因为LZ想尽办法,试着用最易于理解的语言说清楚原理,不做太多的理论分析。(LZ文学功底不行),所以...
百度
Easy
DL 物体检测模型实践(转)
参考网址:快速上手百度大脑
Easy
DL专业版·物体检测模型(附代码)_JKX_geek的博客-CSDN博客 . 简介: 1.1. 什么是
Easy
DL专业版
Easy
DL专业版是
Easy
DL在2019年10月下旬全新推出的针对AI初学者或者AI专业工程师的企业用户及开发者推出的AI模型训练与服务平台,目前支持视觉及自然语言处理两大技术方向,内置百度海量数据训练的预训练模型,可灵活脚本调参,只需少量数据可达到优模型效果。 适用人群: 专业AI工程师且追
求
灵活、深度调参的企业或个人开发者 支持定制模...
数据结构与算法
33,029
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章