一个数组根据元素c 字符串分割成数组多个数组要怎么写?

如何将一个 大的数组A 等分成n个小数组a1..an
n不确定【javascript吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:161,389贴子:
如何将一个 大的数组A 等分成n个小数组a1..an
n不确定收藏
千锋javascript 名师荟萃 汇聚html5前沿技术 全栈式教学模式 免费试学两周千锋javascript 0基础20周快速提升,成就html5实战精英 实战教学 学习就业无缝对接!
需要手动输入
任意两个正整数
b&a; n=b-a
n一般最多2-100左右而且当n值越大
生成的数组A 元素个数也越多
为45*n个所以现在需要 等分成n个 小的数组a1..an 每个数组45个元素并且是每个小数组依次从数组A中取值例如n=2,A有90个元素 那么 a1[i]=A[2*i]
a2[i]=A[2*i+1]
A有135个元素
a1[i]=A[3*i]
a2[i]=A[3*i+1]
a3[i]=A[3*i+2]这样依次类推求JS代码我也有思路但是整合不到一块==
求帮助啊各位大神
没有人帮忙吗
var aArr=[];for(var j = 0;j&n;j++){for(var i = 0;i&A.length/n;i++){var arr = [];arr[i] = A[2*i+j];}aArr.push(arr);}这样应该会得到一个大数组aArr,里面包含N个小数组,懒得打数据,没验证
登录百度帐号新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 14, 距离下一级还需 186 积分
论坛徽章:0
内容:cat num.txt
1 2 3 4 5 6 7 8 9 10
问题1: 当前文本中有10个数字,想把它拆分成5个数为一组,共两组数字可以随机。
问题2: 如果不清楚文件中有几个数或者字符串,根据数组返回长度不是偶数,是奇数的情况下,又如何分成两组,多出的数可以放任意一组中。
请大神们指教!!!
论坛徽章:130
$ a=(`awk '{for(n=1;n&=NF;n+=2)printf $n& &}' num.txt`)
$ echo ${a[@]}
$ b=(`awk '{for(n=2;n&=NF;n+=2)printf $n& &}' num.txt`)
$ echo ${b[@]}
2 4 6 8 10
$ a=(`awk '{for(n=1;n&=NF;n+=2)printf $n& &}' num1.txt`)
$ echo ${a[@]}
1 3 5 7 9 11
$ b=(`awk '{for(n=2;n&=NF;n+=2)printf $n& &}' num1.txt`)
$ echo ${b[@]}
2 4 6 8 10
$ cat num.txt
1 2 3 4 5 6 7 8 9 10
$ cat num1.txt
1 2 3 4 5 6 7 8 9 10 11
白手起家, 积分 14, 距离下一级还需 186 积分
论坛徽章:0
牛人呀,非常感谢!!!,其实第一个问题倒是不难,主要是想把第二个问题更好的引导出来,再次感谢!
白手起家, 积分 14, 距离下一级还需 186 积分
论坛徽章:0
牛人呀,非常感谢!!!,其实第一个问题倒是不难,主要是想把第二个问题更好的引导出来,再次感谢!
腰缠万贯, 积分 9511, 距离下一级还需 489 积分
论坛徽章:9
本帖最后由 wh7211 于
18:27 编辑
$ cat 1
1 2 3 4 5 6 7 8 9 10 11
$ awk '{for(i=1;i&=NF;i++){a=a?a& &$i:$i;if(i==5){b=a;a=&&}else if(i==NF){c=a}}print b&&1.1&;print c&&1.2&}' 1
$ a=(`cat 1.1`)
$ b=(`cat 1.2`)
$ echo ${a[@]}
1 2 3 4 5
$ echo ${b[@]}
6 7 8 9 10 11
$ echo ${#a[@]}
5
$ echo ${#b[@]}
6
$ echo ${a[1]}
1
$ echo ${b[1]}
6复制代码
小富即安, 积分 4208, 距离下一级还需 792 积分
论坛徽章:0
本帖最后由 本友会机友会摄友会 于
15:49 编辑
$数组 = 1,2,3,4,5,6,7,8,9,10
$随机数组 = Get-Random -Count 10 -InputObject $数组
$随机数组中的前5个元素 = $随机数组[0..4]
$随机数组中的后5个元素 = $随机数组[5..9]
#------------------------------------------
#再执行一遍代码,则变量值都变了。
$随机数组 = Get-Random -Count 10 -InputObject $数组
$随机数组中的前5个元素 = $随机数组[0..4]
$随机数组中的后5个元素 = $随机数组[5..9]
#===============================================
$数组_未知其中元素数是单还是双 = 1,2,3,4,5 #5个数组为例,前3后2。
[int]$数组的一半元素数 = $数组_未知其中元素数是单还是双.length / 2
$随机数组2 = Get-Random -Count $数组_未知其中元素数是单还是双.length -InputObject $数组_未知其中元素数是单还是双
$随机数组2中的前一半元素 = $随机数组[0..$数组的一半元素数]
$随机数组2中的后一半元素 = $随机数组[($数组的一半元素数+1)..($数组_未知其中元素数是单还是双.length -1)]复制代码
powershell 【强】,【简】,死你!
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处已解决问题
如何比较两个数组然后把不同的元素放到另一个数组里?
我有两个数组:假如数组arr1中元素为1,2,3,4数组arr2中元素为1,3,4如何能通过JS把arr1和arr2中不同的元素2,给放到arr3这个数组里?有时候可能arr2中元素比arr1中元素多。
浏览次数:1481
用手机阿里扫一扫
最满意答案
建hash,key为元素value为命中初始为1A所有元素放入hash中并增加此key命中*2B所有元素放入hash中并增加此key命中*5最后如果尾数为0则去掉.&&&&functiona(){&&&&vararr1=[1,3,4];&&&&vararr2=[1,2,4];&&&&vararr3=[];varhash3={};for(varindexinarr1){vari=arr1[index];vartemp=hash3[&&+i];if(!temp){hash3[&&+i]=2;}else{hash3[&&+i]=temp*2;}}for(varindexinarr2){vari=arr2[index];vartemp=hash3[&&+i];if(!temp){hash3[&&+i]=5;}else{hash3[&&+i]=temp*5;}}for(variinhash3){vartemp=hash3[&&+i];if(temp%10!=0){arr3.push(i)}}returnarr3;&&&&}&&&&alert(a());
答案创立者
以企业身份回答&
正在进行的活动
生意经不允许发广告,违者直接删除
复制问题或回答,一经发现,拉黑7天
快速解决你的电商难题
店铺优化排查提升2倍流量
擅长&nbsp 店铺优化
您可能有同感的问题
扫一扫用手机阿里看生意经
问题排行榜
当前问题的答案已经被保护,只有知县(三级)以上的用户可以编辑!写下您的建议,管理员会及时与您联络!
server is ok& &&&定义两个数组,首先把两个数组合并成一个新数组,然后把新数组中的所有元素逆序排列
定义两个数组,首先把两个数组合并成一个新数组,然后把新数组中的所有元素逆序排列
定义两个数组,首先把两个数组合并成一个新数组,然后把新数组中的所有元素逆序排列.这个要咋写,大兄弟们!
悬赏2青鸟豆&|&浏览2536
才能回答问题
int []a=new int[]{1,2,3};
int []b=new int[]{3,4};
int[] f = new int[a.length+b.length];
本周答题榜
本周回答14题
本周回答4题
本周回答3题
本周回答2题
本周回答2题
本周回答2题
本周回答2题
本周回答1题
Beijing Aptech Beida Jade Bird Information Technology Co.,Ltd北大青鸟IT教育 北京阿博泰克北大青鸟信息技术有限公司 版权所有
京ICP备号-3&nbsp>&nbsp
&nbsp>&nbsp
&nbsp>&nbsp
java实现原数组根据下标分隔成两个子数组并且在原数组中交换两个子数组的位置
摘要:此类实现:输出一行数组数据,根据输入的下标,以下标位置为结束,将原数组分割成两组子数组。并交换两个子数组的位置,保持子数组中的元素序号不变.如:原数组为7,9,8,5,3,2以下标3为分割点,分割为子数组一:7,9,8,5。和子数组二:3,2.经过交换算法后的结果应为:3,2,7,9,8,5有两种交换算法&1&前插法:将子数组3,2另存在一个临时数组中,将原数组7,9,8,5,3,2每一位向后移两个位置&&再将子数组3,2插入到移动好元素位置的
此类实现:输出一行数组数据,根据输入的下标,以下标位置为结束,将原数组分割成两组子数组。并交换两个子数组的位置,保持子数组中的元素序号不变.如:原数组为7,9,8,5,3,2 以下标3为分割点,分割为子数组一:7,9,8,5。和子数组二:3,2.经过交换算法后的结果应为:3,2,7,9,8,5有两种交换算法&1&前插法:将子数组3,2另存在一个临时数组中,将原数组7,9,8,5,3,2每一位向后移两个位置&&再将子数组3,2插入到移动好元素位置的原数组中。&2&逆置法:将原数组7,9,8,5,3,2逆置为2,3,5,8,9,7&&&再分别逆置分割好的两个子数组,结果应为:3,2,7,9,8,5 package&顺序表;import&java.util.ArrayLimport&java.util.S/**&*&@param&args&*&@author&刘雁冰&*&@date&&19:43&*//*&*&此类实现:&*&输出一行数组数据,根据输入的下标,以下标位置为结束,将原数组分割成两组子数组。&*&并交换两个子数组的位置,保持子数组中的元素序号不变.&*&如:原数组为7,9,8,5,3,2&以下标3为分割点,分割为子数组一:7,9,8,5。和子数组二:3,2.&*&经过交换算法后的结果应为:3,2,7,9,8,5&*&&*&有两种交换算法&*&&1&前插法:将子数组3,2另存在一个临时数组中,将原数组7,9,8,5,3,2每一位向后移两个位置&*&&2&逆置法:将原数组7,9,8,5,3,2逆置为2,3,5,8,9,7&*&&&再分别逆置分割好的两个子数组,结果应为:3,2,7,9,8,5&*/public&class&ResetOrderListPostion&{&&/*&&*&int&[]order:数组存储用户输入的原数组&&*&int&postion:存储用户输入的分隔下标&&*/&static&int&[]&static&int&&&/*&&*&前插法&&*/&public&void&frontInsert(int&[]orderInsert,int&postion){&&/*&&&*&使用ArrayList链表来存储分隔后的子数组一&&&*/&&ArrayList&Integer&&listA=new&ArrayList&Integer&();&&for(int&i=postion+1;i&orderInsert.i++){&&&listA.add(orderInsert[i]);&&}&&&&int&a[]=new&int[listA.size()];&&&&for(int&i=0;i&listA.size();i++){&&&a[i]=listA.get(i);&&&//将原数组每一个元素往后移动子数组长度次&&&for(int&j=orderInsert.length-1;j&0;j--){&&&&orderInsert[j]=orderInsert[j-1];&&&}&&}&&&&&&//将子数组一插入到移动好的子数组中&&for(int&k=a.length-1;k&=0;k--){&&&orderInsert[k]=a[k];&&}&&&&//注意消除最后一个元素的,号&&System.out.println(&使用前插法---交换位置后数组的结果如下:&);&&for(int&j=0;j&orderInsert.j++){&&&if(j==orderInsert.length-1)&&&&System.out.print(orderInsert[j]);&&&else&&&&System.out.print(orderInsert[j]+&,&);&&}&}&&&/*&&*&逆置法&&*/&public&void&inversion(int&[]orderInversion,int&postion){&&&&//逆置整个原数组&&for(int&i=0;i&orderInversion.length/2;i++){&&&int&t=orderInversion[i];&&&orderInversion[i]=orderInversion[orderInversion.length-1-i];&&&orderInversion[orderInversion.length-1-i]=t;&&}&&&&//逆置子数组一&&for(int&i=0;i&(orderInversion.length-postion)/2;i++){&&&int&t=orderInversion[i];&&&orderInversion[i]=orderInversion[orderInversion.length-postion-2-i];&&&orderInversion[orderInversion.length-postion-2-i]=t;&&}&&&&//逆置子数组二&&for(int&i=0;i&(postion+1)/2;i++){&&&int&t=orderInversion[orderInversion.length-1-i];&&&orderInversion[orderInversion.length-1-i]=orderInversion[orderInversion.length-postion-1+i];&&&orderInversion[orderInversion.length-postion-1+i]=t;&&}&&&&&//注意消除最后一个元素的,号&&System.out.println(&使用逆置法---交换位置后的结果如下:&);&&for(int&i=0;i&orderInversion.i++){&&&if(i==orderInversion.length-1)&&&&System.out.print(orderInversion[i]);&&&else&&&&System.out.print(orderInversion[i]+&,&);&&}&&System.out.println();&}&&public&static&void&main(String[]&args)&{&&//&TODO&Auto-generated&method&stub&&&ResetOrderListPostion&rp=new&ResetOrderListPostion();&&&&System.out.println(&请输入数组,按-1结束输入&);&&ArrayList&Integer&list=new&ArrayList&Integer&();&&Scanner&sc=new&Scanner(System.in);&&int&m=sc.nextInt();&&while(m!=-1){&&&list.add(m);&&&m=sc.nextInt();&&}&&&&int&[]order=new&int[list.size()];&&&&for(int&i=0;i&list.size();i++){&&&order[i]=list.get(i);&&}&&System.out.println(&您输入的数组数据为:&);&&for(int&i=0;i&order.i++){&&&if(i==order.length-1)&&&&System.out.print(order[i]);&&&else&&&&System.out.print(order[i]+&,&);&&}&&System.out.println();&&System.out.println(&请输入下标,以此来将原数组分隔成两个数组(注意,输入的下标不能小于0且不能大于等于数组长度):&);&&int&postion=sc.nextInt();&&System.out.println(&您输入的分割下标为:/n&+postion);&&&&//判定输入的分隔下标有效性&&if(postion&0||postion&=order.length)&&&System.out.println(&输入有误!&);&&else{&&&System.out.println(&********************请选择数组位置交换算法********************&);&&&System.out.println(&********************1--:前插法********************&);&&&System.out.println(&********************2--:逆置法********************&);&&&int&n=sc.nextInt();&&&switch(n){&&&case&1:{&&&&rp.frontInsert(order,&postion);&&&&&&&&}&&&case&2:{&&&&rp.inversion(order,&postion);&&&&&&&&}&&&default:&&&&System.out.println(&输入有误!&);&&&&}&&}&}}
以上是的内容,更多
的内容,请您使用右上方搜索功能获取相关信息。
若你要投稿、删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内给你回复。
云服务器 ECS
可弹性伸缩、安全稳定、简单易用
&40.8元/月起
预测未发生的攻击
&24元/月起
为您提供0门槛上云实践机会
你可能还喜欢
你可能感兴趣
阿里云教程中心为您免费提供
java实现原数组根据下标分隔成两个子数组并且在原数组中交换两个子数组的位置相关信息,包括
的信息,所有java实现原数组根据下标分隔成两个子数组并且在原数组中交换两个子数组的位置相关内容均不代表阿里云的意见!投稿删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内答复
售前咨询热线
支持与服务
资源和社区
关注阿里云
International}

我要回帖

更多关于 ios字符串分割成数组 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信