数组分为二部分
程序员文章站
2022-06-05 14:06:52
...
数组分成二部分
一个一维数组,注意键名无规律且非数字:
$arr=array('wc'=>12,'wssc'=>123,'wac'=>142',w3c'=>124,'wac'=>012,'wsbsc'=>012c3,'wac'=>014d2',w3ec'=>0124);
现在要分成二部分,即:
$arr1=array('wc'=>12,'wssc'=>123,'wac'=>142',w3c'=>124);
与
$arr2=array('wac'=>012,'wsbsc'=>012c3,'wac'=>014d2',w3ec'=>0124);
求此算法
------解决方案--------------------
你没指定什么分割规则就――
array_chunk()
或
array_slice()
------解决方案--------------------
本来拆分的条件很显然,判断第一个字符是否为 0 就可以了
但遗憾的是,你的题目出错了,由于关联键 wac 是重复的。所以数组 $arr 只有 7 项
由 7 项拆分为总计 8 项的数组,由于条件不充分,所以无解!
你不是在挑战我们的智商吧?
------解决方案--------------------
不管你的数组有没有错误,但是这个方法应该可行(元素偶数个;或者奇数个,分的一多以少):
asort($arr);
然后截取前面的就ok。关于截取,可以使用函数,也可以取值然后赋值给另一个数组
一个一维数组,注意键名无规律且非数字:
$arr=array('wc'=>12,'wssc'=>123,'wac'=>142',w3c'=>124,'wac'=>012,'wsbsc'=>012c3,'wac'=>014d2',w3ec'=>0124);
现在要分成二部分,即:
$arr1=array('wc'=>12,'wssc'=>123,'wac'=>142',w3c'=>124);
与
$arr2=array('wac'=>012,'wsbsc'=>012c3,'wac'=>014d2',w3ec'=>0124);
求此算法
------解决方案--------------------
你没指定什么分割规则就――
array_chunk()
或
array_slice()
------解决方案--------------------
本来拆分的条件很显然,判断第一个字符是否为 0 就可以了
但遗憾的是,你的题目出错了,由于关联键 wac 是重复的。所以数组 $arr 只有 7 项
由 7 项拆分为总计 8 项的数组,由于条件不充分,所以无解!
你不是在挑战我们的智商吧?
------解决方案--------------------
不管你的数组有没有错误,但是这个方法应该可行(元素偶数个;或者奇数个,分的一多以少):
asort($arr);
然后截取前面的就ok。关于截取,可以使用函数,也可以取值然后赋值给另一个数组
相关文章
相关视频