Cadence Skill 论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7798|回复: 5

[求助] 求编这个程序!!!急!!!

[复制链接]
发表于 2016-6-1 09:14:34 | 显示全部楼层 |阅读模式
FindDuplicList
FindDuplicList( l_list
)
Description
找出某list有重複之元素以及該元素之數量。
Arguments
l_list 一個list。
Value Returned
list 重複元素之清單list,每個元素亦為一list,car(list)為重複之元素,nth(1 list) 為該元素之數量list,nth(2 list) 為該元素之重複index位置list。
nil 無重複元素或第一參數非list。
Example
¯ FindDuplicList(list("a1" "a4" "a3" "a3" "a6" "a5" "a4" "a2" "a3"))
ð (("a3" 3 (2 3 8)) ("a4" 2 (1 6))) ß 元素 "a3" 有重複,數量共為3個,其重複index位置list (2 3 8);及 "a4" 有重複,數量共為2個,其重複index位置list (1 6))。
¯ FindDuplicList(list("a1" "a4" "a3" "a6" "a5" "a2"))
ð nil ß 無重複元素。
 楼主| 发表于 2016-6-6 15:55:23 | 显示全部楼层
发表于 2016-6-22 17:38:30 | 显示全部楼层
  1. axlCmdRegister( "FindDuplicList" 'FindDuplicList)
  2. axlSetAlias("dl" "FindDuplicList")
  3. procedure( FindDuplicList(List)
  4. prog((l num ll newList)
  5.         l = makeTable("l" nil)
  6.         num = 0
  7.         foreach(obj List
  8.                 num = num + 1
  9.                 l[obj] = append1(l[obj] num)
  10.         )
  11.         ll = tableToList(l)
  12.         newList = nil
  13.         foreach(obj ll
  14.                 newList = append1(newList list(car(obj) length(cadr(obj)) cadr(obj)))
  15.         )
  16.         return(newList)
  17. )
复制代码


你要求的格式挺奇葩的。。凑合着用吧
 楼主| 发表于 2016-6-27 08:45:38 | 显示全部楼层
leilei4908 发表于 2016-6-22 17:38
你要求的格式挺奇葩的。。凑合着用吧

thanks
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|网站地图|Cadence Skill 论坛 ( 蜀ICP备13024417号 )

GMT+8, 2024-11-24 01:34 , Processed in 0.145261 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表