#!/bin/
bash
# 用shell中的數組構造統計不同的組合個數.
# 下面的組合有(
1
,
6
)(
3
,
4
)(
5
,
5
)(
1
,
6
)(
5
,
5
)(
4
,
3
)(
1
,
8
)
# 不同的組合為(
1
,
6
)(
3
,
4
)(
5
,
5
)(
4
,
3
)(
1
,
8
)
arrayLeft
=(
1
3
5
1
5
4
1
)
arrayRight
=(
6
4
5
6
5
3
8
)
# comNum用來表示不同組合個數
comNum
=
0
arrayLeftLength
=${#arrayLeft[*
]}
if
[[ arrayLeftLength -ge
1
]]
then
array[
0
]=
"
${arrayLeft[0]} ${arrayRight[0]}
"
arrayDiff[
0
]=${array[
0
]}
((comNum
+=
1
))
fi
for
((i=
1
;i<arrayLeftLength;i++
))
do
array[$i]
=
"
${arrayLeft[$i]} ${arrayRight[$i]}
"
sameFlag
=
0
for
((j=
0
;j<=$(($i-
1
));j++
))
do
if
[[
"
${array[$i]}
"
=
"
${array[$j]}
"
]]
then
sameFlag
=
1
break
fi
done
if
[[ sameFlag -eq
1
]]
then
:
else
arrayDiff[$comNum]
=
${array[$i]}
((comNum
+=
1
))
fi
done
echo
$comNum
echo
${array[*
]}
echo
${arrayDiff[*
]}
for
((i=
0
;i<arrayLeftLength;i++
))
do
echo
${arrayDiff[$i]}
done
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

