博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
求无序数组总第n大的数
阅读量:2506 次
发布时间:2019-05-11

本文共 623 字,大约阅读时间需要 2 分钟。

微博里内容了,原文是求  无序数组中第二大的数。
实际编程实践中,不可能只求第二大,我扩展为第n 大
给出lisp 的代码:
一个基于 list 的,一个是基于数组的。
CL-USER> (defun  get-nth-max (lst n)
       (let (( order (sort lst #'>=)))
         (nth n order)))
GET-NTH-MAX
CL-USER> (get-nth-max '(49 20 50 4 2 1 6 8 10) 5)
8
CL-USER> (sort '(49 20 50 4 2 1 6 8 10) #'>=)
(50 49 20 10 8 6 4 2 1)
CL-USER> (defun  get-ntharr-max (arr n)
       (let (( order (sort arr #'>=)))
         (aref order (1- n))))
GET-NTHARR-MAX
CL-USER> (sort  #1a(9 8  20 50 4 2 1 6 8 10) #'>=)
#(50 20 10 9 8 8 6 4 2 1)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/133735/viewspace-741551/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/133735/viewspace-741551/

你可能感兴趣的文章
Android 面试题整理总结(二)Java 集合
查看>>
学习笔记_vnpy实战培训day02
查看>>
学习笔记_vnpy实战培训day03
查看>>
VNPY- VnTrader基本使用
查看>>
VNPY - CTA策略模块策略开发
查看>>
VNPY - 事件引擎
查看>>
MongoDB基本语法和操作入门
查看>>
学习笔记_vnpy实战培训day04_作业
查看>>
OCO订单(委托)
查看>>
学习笔记_vnpy实战培训day06
查看>>
回测引擎代码分析流程图
查看>>
Excel 如何制作时间轴
查看>>
股票网格交易策略
查看>>
matplotlib绘图跳过时间段的处理方案
查看>>
vnpy学习_04回测评价指标的缺陷
查看>>
ubuntu终端一次多条命令方法和区别
查看>>
python之偏函数
查看>>
vnpy学习_06回测结果可视化改进
查看>>
读书笔记_量化交易如何建立自己的算法交易01
查看>>
设计模式03_工厂
查看>>