QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 11306|回复: 8
打印 上一主题 下一主题

关于数组存储方式

[复制链接]
字体大小: 正常 放大
forcal 实名认证       

45

主题

3

听众

282

积分

升级  91%

  • TA的每日心情
    难过
    2012-8-27 18:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    #
    发表于 2010-10-5 09:15 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    数组存储方式有按行顺序存储和按列顺序存储两种,Fortran、matlab是按列优先的,而C/C++、Pascal等是按行优先的,哪一种更好呢?
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    okdjl        

    0

    主题

    3

    听众

    179

    积分

    升级  39.5%

  • TA的每日心情

    2012-1-11 14:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    回复

    使用道具 举报

    forcal 实名认证       

    45

    主题

    3

    听众

    282

    积分

    升级  91%

  • TA的每日心情
    难过
    2012-8-27 18:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    以下是一个区别:9 T' ~5 P4 {/ L
    $ z) W( P+ e( L. O2 f
    例如一个矩阵,如果按列存储,则计算列向量的和就比较方便;如果按行存储,计算行向量的和则比较方便。
    4 O* y( _4 W5 x$ P4 g3 f. m0 {  U6 H- H# l! z
    Forcal按行优先存储,代码:' J8 O) y" B: B$ Z- r  j. B* Y
    1. !using["math","sys"];
    2. # X0 j# v9 P6 N: g- Z
    3. mvar:
    4. 7 i* O7 F2 w0 V7 ^3 ?2 X, E. t6 N9 t
    5. oo{p=rand[5000,5000]},
    6. 1 t5 S, A4 C6 ^$ H3 ?' N' c
    7. t0=clock(),6 s& Q2 _$ G! Y
    8. oo{Sum[p,1]},
    9. 6 p) c& _  c5 U$ l2 u
    10. printff{"\r\n按列求和时间: {1,r}",[clock()-t0]/1000},% L' S; R/ |' S0 M* Q, M- i1 T
    11. t0=clock(),8 \0 [6 ~/ T\\" Z8 f
    12. oo{Sum[p,2]},* L% c% b! {4 ?
    13. printff{"\r\n按行求和时间: {1,r}",[clock()-t0]/1000}5 k8 N0 y5 x- U3 E
    结果:7 F" c; N: q7 b- ~' I$ H
    按列求和时间: 0.375: [1 A: p  q$ Z* \8 {9 E0 v, K
    按行求和时间: 4.7e-002
    - r) V2 Z' s: f& _  R- Y
    $ f' F. x& g% m/ u& N- f& Xmatlab中sum(A,1)和sum(A,2)的效率似乎不一样吧?8 L/ l; m4 H( `- q3 f
    回复

    使用道具 举报

    forcal 实名认证       

    45

    主题

    3

    听众

    282

    积分

    升级  91%

  • TA的每日心情
    难过
    2012-8-27 18:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    就象男的和女的一样,哪种好呢?/ X6 _2 X% {" |7 ?2 l
    master_math 发表于 2010-10-5 18:27
    / R6 E) \+ f" a5 T- m: d( w
    您的意思是按列优先和按行优先是一样的,只是习惯而已?* J) I5 F1 c& z/ [# p3 ?5 t$ ]

    * N  f$ ~1 ^, k0 R
    回复

    使用道具 举报

    forcal 实名认证       

    45

    主题

    3

    听众

    282

    积分

    升级  91%

  • TA的每日心情
    难过
    2012-8-27 18:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    我想是按列优先的好些8 Q; z* j  g2 t- |
    whuteric 发表于 2010-10-5 16:22
    & j# W( b5 r/ m* z: }
    为什么呢?; G: C% y( D  R5 [) M$ R) Y

    . [- J' M/ g' G/ i
    回复

    使用道具 举报

    19

    主题

    4

    听众

    235

    积分

    升级  67.5%

  • TA的每日心情
    开心
    2016-12-19 06:10
  • 签到天数: 32 天

    [LV.5]常住居民I

    群组数学建摸协会

    回复

    使用道具 举报

    whuteric 实名认证       

    0

    主题

    3

    听众

    91

    积分

    升级  90.53%

    该用户从未签到

    自我介绍
    sunshine
    回复

    使用道具 举报

    9

    主题

    3

    听众

    186

    积分

    升级  43%

  • TA的每日心情
    开心
    2011-9-11 13:24
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    大家好!我是新手!请多多关照!
    回复

    使用道具 举报

    qbist 实名认证       

    2

    主题

    3

    听众

    304

    积分

    升级  1.33%

    该用户从未签到

    自我介绍
    一个对未来充满信心的阳光型男孩!

    新人进步奖

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-1 04:12 , Processed in 0.517566 second(s), 95 queries .

    回顶部