这个要怎么算,解析真的看不懂,九月就要考试了,带一带,万分感谢!
数组下标要理解,比如s[n],n就是数组s的下标。如果实在看不懂可以将第一个for循环一个个写出来。
你知道c[s[i]]到底是什么不
一层一层来,先确定了i,那么s[i]也就确定了,s[i]确定了,那c[s[i]]也就确定了
比如i=0,s[i]=1,那么就是c[1]++呗
说白了这个就是用来数数的,数组里出现了几个1,那么c[1]就是几,一共有几个2,那么c[2]就是几
c[s[i]]++,i=0时,s[0]为1,c[s[i]]则为c[1]。
整个代码是统计s中相同元素的个数。
统计数组s[]中各元素的重复的次数。c[s[i]]++ ,这句从里往外推,先得到 s[i] 得值,比如 i = 0 时,s[i=0] = 1,数组 c[1]++ 一次, 当 i = 1 时,s[i=1] = 2, 数组 c[2]++ 一次,以此类推。最后数组 c[1] = 4, c[2] = 3, c[3] = 3, c[4] = 2,c[5] = {0,4,3,3,2} 。