作者ysho ()
看板EE_DSnP
标题[问题] array
时间Sun May 17 11:25:48 2009
这次作业的说明文件有提到在搬动资料时可以使用
memcpy() memmove() 等函式,非常好用且强大,
但我想问的是,一般介绍 dynamic array 的资料都有提到
array 的主要缺点在 insert 或 resize 时需要搬动一堆资料,
使得复杂度为 O(n),而现在一但使用了 memcpy memmove,
似乎就变成 constant time O(1) 了,所以...
1. 不知道使用 memcpy memmove 安全吗?有什麽缺点呢?
2. 这是否代表以这种方式
implement 出来的 dynamic array 几乎没有缺点了呢?
复杂度最高只到 find O(log(n))?
--
後来发现我好像搞错 O(n) 的意思了
即使是 memcpy memmove,时间应该也要是 O(n) 成长
感谢老师和 ilway25 解惑!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.234
1F:推 ric2k1:man 一下 memcpy & memmove 的确是有些注意事项. 不过你们 05/17 11:28
2F:→ ric2k1:也可以用 for... copy 来比较看看, 到底差多少~~~ 05/17 11:28
3F:→ ilway25:memcpy 和 move 也应该算是 O(n) 吧!我觉得 05/17 14:03
※ 编辑: ysho 来自: 140.112.4.234 (05/17 14:32)