Browse Source

ft: confuseList

master
SisMaker 5 months ago
parent
commit
2c49a8cd1e
1 changed files with 6 additions and 6 deletions
  1. +6
    -6
      src/comMisc/utList.erl

+ 6
- 6
src/comMisc/utList.erl View File

@ -108,21 +108,21 @@ getRandFromList(Num, List) ->
List -- Result.
%% List =[] List2 300 使confuseList 300使confuseList2
%% List =[] List2 300 使confuseList1 300使confuseList2
%% ----------------------------------------------------
confuseList(List) ->
confuseList1(List) ->
TupleList = list_to_tuple(List),
TupleSize = tuple_size(TupleList),
confuseList(TupleSize, TupleSize, TupleList).
confuseList1(TupleSize, TupleSize, TupleList).
confuseList(0, _TupleSize, TupleList) -> tuple_to_list(TupleList);
confuseList(Index, TupleSize, TupleList) ->
confuseList1(0, _TupleSize, TupleList) -> tuple_to_list(TupleList);
confuseList1(Index, TupleSize, TupleList) ->
ChangeIndex = rand:uniform(TupleSize),
Value1 = element(Index, TupleList),
Value2 = element(ChangeIndex, TupleList),
TupleList1 = setelement(Index, TupleList, Value2),
TupleList2 = setelement(ChangeIndex, TupleList1, Value1),
confuseList(Index - 1, TupleSize, TupleList2).
confuseList1(Index - 1, TupleSize, TupleList2).
confuseList2(List) ->
Array = array:from_list(List),

Loading…
Cancel
Save