扑克牌的排序

问题描述:

LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Lucky!”。LL决定去买体育彩票啦。 现在,要求你使用这幅牌模拟上面的过程,然后告诉我们LL的运气如何。为了方便起见,你可以认为大小王是0。

function sort($data = array()) {    $num = 5;    if (count($data) != $num) {        return false;    }

    sort($data);    if (in_array(0, $data)) {        $ghostNum = 0;        foreach ($data as $value) {            if ($value == 0) {                $ghostNum++;            }        }

        switch ($ghostNum) {            case 1 :        }

    } else {

    }}

原文地址:https://www.cnblogs.com/jianzhaojing/p/11822276.html

时间: 2024-10-31 05:22:45

扑克牌的排序的相关文章

扑克牌的排序版本(制造扑克牌,发牌)

import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map; public class practice01 { public static void main(String[] args) { //封装扑克牌,四种花色 String[] colors={"?","?","

各种排序算法的实现和比较

算法的稳定性 如果待排序表中有两个元素 Ri 和 Rj,其对应的关键字keyi = keyj,注意是关键字相等,且在排序前 Ri 排在 Rj 前面,如果使用某一算法排序后,Ri 仍在 Rj 前面,则称这个算法是稳定的,否则是不稳定的. 在排序过程中,根据元素是否完全在内存中,可以将排序算法分为两类:内部排序是指在排序期间元素全部存放在内存中的排序:外部排序是指在排序期间元素无法全部同时放在内存中,必须在排序过程中根据要求不断地在内外存之间移动. 以下所有代码基于此类结构: typedef int

JavaScript一个简易枚举类型实现扑克牌

<script type="text/javascript"> /** * 这个函数创建一个新的枚举类型,实参对象表示类的每个实例的名字和值 * 返回值是一个构造函数,它标识这个新类 * 注意,这个构造函数也会抛出异常,不能使用它来创建该类型的新实例 * 返回的构造函数包含名/值对的映射表 * 包括由值组成的数组,以及以个foreach()迭代器函数 */ function enumeration(namesToValues){ //这个虚拟的构造函数式返回值 var en

说一说,最基础的三个排序

为什么突然想要写着最简单的三个排序呢? 第一个原因是 前两天在北科大的研究所里面居然把选择排序写错了(煞是丢人!) 二是 好久没有温习过了 借此机会温习一下 也给自己的博客开个篇 因为 一上来 就整写bigger 太高的 真心觉得现在的自己 有些hold不住 所以 来吧 首先 排序嘛 需要一个 数组序列 {a1,a2,a3,...,an} 我们让它来满足 从小到大的排列 这里先要来介绍一下 冒泡排序 插入排序 跟 选择排序 他们在空间复杂度上 都是一样的 全部都是 O(n^2) 其次对于少量元素

内部排序-&gt;基数排序-&gt;链式基数排序

文字描述 基数排序是和前面各类排序方法完全不相同,前面几篇文章介绍的排序算法的实现主要是通过关键字间的比较和移动记录这两种操作,而实现基数排序不需要进行记录关键字间的比较.基数排序是一种借助多关键字排序的思想对单逻辑关键字进行排序的方法.先介绍下什么是多关键字排序,以引入链式基数排序算法. 先介绍什么是多关键字排序: 比如,对扑克牌进行排序,每张扑克牌有两个"关键字":花色(梅花<方块<红桃<黑桃)和面值(2<3<,-,A),且"花色"

【转载】基数排序

编程论到极致,核心非代码,即思想. 所以,真正的编程高手同时是思想独到及富有智慧(注意与聪明区别)的人. 每一个算法都是一种智慧的凝聚或萃取,值得我们学习从而提高自己,开拓思路,更重要的是转换思维角度. 其实,我们大多数人都活在“默认状态”下.没有发觉自己的独特可设置选项-----思想. 言归正传(呵呵!恢复默认状态),以下学习基数排序. [1]基数排序 以前研究的各种排序算法,都是通过比较数据大小的方法对欲排数据序列进行排序整理过程. 而基数排序却不再相同,那么,基数排序是采用怎样的策略进行排

Java笔试题解析(二)——2015届唯品会校招

曾经总是看别人写的笔经面经.今天自己最终能够写自己亲身经历的一篇了 T-T. 前阵子去了唯品会的秋招宣讲会,华工场(如今才知道原来找家互联网公司工作的人好多).副总裁介绍了VIP的商业模式是逛街式的购物,与京东和淘宝不同. 宣讲会之后还没有笔试.网上找了一些曾经的题目,当练练手. 2014校招的. 1.下列不可作为java语言修饰符的是(D) A. a1 B. $1 C. _1 D. 11 这题目有问题,修饰符是public这些,不能作为变量名才对. 2.整形数据类型中.须要内存空间最少的是(D

8-3.基数排序详解

编程论到极致,核心非代码,即思想. 所以,真正的编程高手同时是思想独到及富有智慧(注意与聪明区别)的人. 每一个算法都是一种智慧的凝聚或萃取,值得我们学习从而提高自己,开拓思路,更重要的是转换思维角度. 其实,我们大多数人都活在"默认状态"下.没有发觉自己的独特可设置选项-----思想. 言归正传(呵呵!恢复默认状态),以下学习基数排序. [1]基数排序 以前研究的各种排序算法,都是通过比较数据大小的方法对欲排数据序列进行排序整理过程. 而基数排序却不再相同,那么,基数排序是采用怎样的

数据结构之——基数排序

编程论到极致,核心非代码,即思想. 所以,真正的编程高手同时是思想独到及富有智慧(注意与聪明区别)的人. 每一个算法都是一种智慧的凝聚或萃取,值得我们学习从而提高自己,开拓思路,更重要的是转换思维角度. 其实,我们大多数人都活在“默认状态”下.没有发觉自己的独特可设置选项-----思想. 言归正传(呵呵!恢复默认状态),以下学习基数排序. [1]基数排序 以前研究的各种排序算法,都是通过比较数据大小的方法对欲排数据序列进行排序整理过程. 而基数排序却不再相同,那么,基数排序是采用怎样的策略进行排