From 2c49a8cd1e390a29739041657cde8ab5656ebd1e Mon Sep 17 00:00:00 2001 From: SisMaker <1713699517@qq.com> Date: Thu, 7 Nov 2024 10:17:26 +0800 Subject: [PATCH] ft: confuseList --- src/comMisc/utList.erl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/comMisc/utList.erl b/src/comMisc/utList.erl index 5c93b00..ce45e41 100644 --- a/src/comMisc/utList.erl +++ b/src/comMisc/utList.erl @@ -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),