- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在 lisp 中按升序排列 3 个数字的排序列表。但是在编译和加载时出现错误,如“Incorrect number of arguments to if”。
(defun order (n1 n2 n3)
(if (>= n1 n2)
(progn(progn(if (>= n1 n3)
(progn(if (>= n2 n3) (progn(setf max n1) (setf mid n2) (setf min n3)) (progn(setf max n1) (setf mid n3) (setf min n2))))
(progn(setf max n3) (setf mid n1) (setf min n2))
)))
(progn(progn(if (< n1 n3)
(progn(if (>= n2 n3) (progn(setf max n2) (setf mid n3) (setf min n1)) (progn(setf max n3) (setf mid n2) (setf min n1))))
((setf max n2) (setf mid n1) (setf min n3))
)))
))
(list min mid max)
)
最佳答案
这是一个可能的解决方案:
(defun order (min mid max)
(when (< mid min)
(rotatef mid min))
(if (< max min)
(rotatef max mid min)
(when (< max mid)
(rotatef mid max)))
(list min mid max))
首先,我们假设三个参数的顺序已经正确,如果不是这样,我们通过使用 rotatef
来更改它们。 ,交换两个变量或旋转三个或更多变量的原始函数。
如果有必要,第一个 when
更正 min
和 mid
之间的相对顺序,如果 mid
交换它们> 小于 min
。
当我们知道 min
实际上小于 mid
时,我们尝试以这种方式将 max
放在正确的位置:
首先,如果它小于min
,这意味着它是三个中较小的,我们适本地旋转三个变量,
否则,它可能介于 min
和 mid
之间,在这种情况下我们交换 mid
和 max
变量。如果它大于或等于 mid
,则无需进行交换,并且三个变量已包含正确顺序的值。
关于list - 如何在 lisp 中按升序排列 3 个数字的排序列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39685970/
我正在做作业,经过几天的努力,我无法弄清楚为什么在实现归并排序后,我的列表仅包含链接列表中的最后一个对象。它不输出我的整个链表,只输出最后一个对象。如何更改代码以阻止列表在一个对象之后变为 null。
我想对一列进行排序(它是一个带有 Y/N 的标志列)。它应该在每次点击时在升序/降序之间切换。 我的代码不起作用..我是 VBA 新手。请提供任何帮助。 Private Sub CommandButt
我对如何让它正常工作有点困惑。我需要从用户那里获取数字(直到他们输入负数或达到最大大小),并且对于他们添加的每个数字,将其按升序插入到正确的索引中。现在,由于某种原因,即使我定义了常量 10,我的数组
我相当困惑如何创建一个按钮,将打印到 php 文件的表中的数据按升序或降序排序。 "> Order by Week Sort Week 这是我想要实现的一个简单示例,我只是停留在 php
我在使用 C++ 中的 priority_queue 时遇到问题,我有一个优先级队列 vector ,优先级队列包含多个 Person 对象。现在,我希望 priority_queue 根据年龄对 P
我正在使用 Lodash 按列对表中的数据进行排序。当我单击表格列标题中的箭头时,该特定表格列将按升序或降序排序。但是,我希望每一列首先按升序排序,而不管其他列的当前顺序如何。现在,我的函数只根据当前
如果事先知道哪些列可用,则以下代码可以重新排列列,但如果想按降序/升序重新排列列怎么办? StackOverflow 上有一些类似的帖子,但没有一篇可以在事先不知道哪些列可用的情况下这样做。 ty
在 woocommerce 中,我使用以下代码添加了自定义费用: add_action( 'woocommerce_cart_calculate_fees', 'custom_fee_based_on
这可以很好地以最多 1000 个项目的步长对数据进行分页: var q1 = (from book in table.CreateQuery() where book.PartitionKe
您好,我正在使用以下内容对表适配器返回的数据表的结果进行排序 Dim spots = myDataTable.Where(Function(t) t.UserID = 1).OrderByDesce
这可以很好地以最多 1000 个项目的步长对数据进行分页: var q1 = (from book in table.CreateQuery() where book.PartitionKe
我正在尝试获取数据库中最近的 n 个条目的列表,但将它们按升序排序。 显然我可以使用以下方法获取前 n 个条目: SELECT owner_id,message FROM messages WHERE
我尝试使用此方法将数据提取到 mysql 表 $query=$conn->query("SELECT * FROM users ORDER BY id_user ASC"); 这是我的表结构 用户 i
我正在使用 NSFetchedResultsController 在列表中显示对象 Event。 Event 对象具有 startDate 属性和 eventType 属性,它是 CheckIn 类型
我有以下代码/数据: import numpy as np data = np.array([ [12, 1, 0.7, 0], [13, 2, 0.5, 1], [41, 3
所以我是 C++ 的新手,我正在尝试一些初学者练习,这是问题所在:我必须按升序和降序对整数数组进行排序,但每次我尝试按升序排序时,都会出现 0在我的数组中无处替换以前的数组整数。只有当我使用“升序”选
在我的应用程序中,我有一个任务列表(不,它不仅仅是另一个待办事项应用程序),我使用 NSFetchedResultsController 在 UITableView 中显示任务。这是相关的初始化代码:
本人由于项目开发中需要对查询结果list进行排序,这里根据的是每一个对象中的创建时间降序排序。本人讲解不深,只实现目的,如需理解原理还需查阅更深的资料。 1.实现的效果 2.创建排序的对象
ORDER BY _column1, _column2; /* _column1升序,_column2升序 */
我需要插入两个值 num1 = 50和 num2 = 80成一个已按升序排序的数组。我不能使用动态数组或列表。也没有结构或类。这是一个类作业,所以我必须遵循指导方针。教授建议我新建一个数组,newar
我是一名优秀的程序员,十分优秀!