- 浏览: 426950 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (170)
- java (77)
- javascript (5)
- jsp (1)
- servlet (6)
- struts (8)
- hibernate (3)
- spring (4)
- ajax (5)
- jquery (3)
- apache cxf (0)
- ext.js (1)
- hadoop (0)
- android (0)
- html5 (2)
- linux (5)
- flex (1)
- tomcat (1)
- jboss (0)
- nginx (0)
- mysql (16)
- sql server (3)
- oracle (4)
- div+css (0)
- mybatis (4)
- design patterns (22)
- xml (2)
- postgresql (3)
- velocity (1)
- freemarker (1)
- kendo-ui (2)
- ibatis (1)
- socket (1)
- C and C++ (1)
- C# (2)
- 程序设计----算法 (0)
- jersey (1)
- dd (0)
- perl (1)
- shell (0)
最新评论
-
书策稠浊:
兄弟,这tm是Java?
java调用百度地图和谷歌地图 -
fengyunlouyanyu:
jquery----删除指定id的div下的img -
yangjianzhouctgu:
Neoman 写道hi,我看你引入了kendo.web.min ...
kendo-ui中kendoGrid的用法 -
Neoman:
hi,我看你引入了kendo.web.min.js 这个js, ...
kendo-ui中kendoGrid的用法 -
yangjianzhouctgu:
llscp 写道这是JS吧...对的呀
java调用百度地图和谷歌地图
题目要求:
Card.java代码如下:
CountCards.java代码如下:
第一次运行结果:
第二次运行结果:
* 新建一副牌,52张,4种花色,每一种都有13张 * 随机洗牌 * 每次顺序抽取两张,如果两张牌的牌面值想通过,记录一次 * 直到抽完为止 * 最后输出一共记录了多少次
Card.java代码如下:
package com.shuobaotang.interview; public class Card { private int number;//牌面值 private String color;//牌面花色 public Card(int number,String color){ this.number = number; this.color = color; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } @Override public String toString(){ return number+":"+color; } }
CountCards.java代码如下:
package com.shuobaotang.interview; /** * 新建一副牌,52张,4种花色,每一种都有13张 * 随机洗牌 * 每次顺序抽取两张,如果两张牌的牌面值想通过,记录一次 * 直到抽完为止 * 最后输出一共记录了多少次 * @author yangjianzhou * */ public class CountCards { public static void main(String[] args) { CountCards cc = new CountCards(); Card[] cards = cc.createCards(); Card[] cs = cc.refreshCards(cards); System.out.println(cc.getCount(cs)); } public Card[] createCards(){ Card [] cards = new Card[52]; int i; for(i =1;i<=13;i++){ Card card1 = new Card(i,"黑"); Card card2 = new Card(i,"红"); Card card3 = new Card(i,"梅"); Card card4 = new Card(i,"方"); cards[(i-1)*4]=card1; cards[(i-1)*4+1]=card2; cards[(i-1)*4+2]=card3; cards[(i-1)*4+3]=card4; } return cards; } public Card[] refreshCards(Card[] cards){ int [] aa = new int[52]; Card[] cs = new Card[52]; int i; for(i=0;i<52;i++){ while(true){ int index = (int)(Math.random()*52); if(aa[index]==0){ cs[i]=cards[index]; aa[index]=1; break; } } } return cs; } public int getCount(Card[] cards){ int count =0; int i; for(i=0;i<52;i=i+2){ Card card1 = cards[i]; Card card2 = cards[i+1]; if(card1.getNumber()==card2.getNumber()){ count++; System.out.println(card1); System.out.println(card2); System.out.println("======================"); } } return count; } }
第一次运行结果:
6:黑 6:方 ====================== 12:方 12:梅 ====================== 2
第二次运行结果:
10:方 10:黑 ====================== 1
发表评论
-
spring boot应用测试框架介绍
2018-07-19 14:44 737个人原创博客:spring boot应用测试框架介绍 -
可执行jar包的配置与运行
2017-06-04 19:42 994spring boot项目可以以jar包的形式执行运行。s ... -
多线程并发
2016-05-21 23:49 0Splitter.on('|').trimResults(). ... -
jdk动态代理实现原理
2016-05-09 23:12 759jdk的动态代理即使用反射来实现,具体由Proxy、Invoc ... -
spring常见注解
2016-05-01 23:33 12171.Autowired 通过spring的依赖注入功能来 ... -
spring常见配置作用
2016-04-29 23:08 926一般应用中常见spring的 ... -
数据来自两个系统时的内存分页算法
2016-04-24 23:12 829业务数据来自a-app与b-app,其中a-app中数据的业务 ... -
linux下java web开发环境搭建
2016-04-10 14:09 1124一般的java web开发涉及到的开发工具有:jdk、tomc ... -
linux下md5sum和DigestUtils.md5Hex的关系
2015-12-19 22:30 8496本文对linux下md5sum命令和java中DigestUt ... -
基于jersey的web service
2015-11-22 22:55 998本文是基于jersey的web service 的两个小例子, ... -
面试总结----spring
2015-05-19 22:17 901spring在面试中经常被 ... -
面试总结----多线程
2015-05-18 22:10 885面试过程中,多线程被问到的概率非常大,差不多都会问的。 下面 ... -
面试总结----java虚拟机
2015-05-17 23:20 735在面试过程中,java虚拟机被问到的概率非常大,应该是每场面试 ... -
面试总结----java集合
2015-05-17 11:57 666春节刚过,打算换一份工作,于是就开始了一段准备面试的生活,准备 ... -
json串与对象之间转换的几种实现方式
2015-01-24 18:56 1868这里使用了gson,fastjson,jackson,json ... -
google关于事件的生产者消费者模式实现例子
2015-01-24 11:28 959google使用生产者/消费者模式实现了事件的产生传播处理过程 ... -
图形化显示---冒泡排序
2014-12-05 22:17 907代码: package com.thread.singal ... -
多线程----wait/notify
2014-11-06 22:06 679线程同步:两个线程依次对同一变量进行操作。 packag ... -
多线程-----阻塞队列
2014-11-05 22:43 840使用一个线程将一个指定目录下面的所有文件放在一个阻塞队列中,用 ... -
迷宫的最短路径
2014-08-19 00:31 3753代码如下: package com.chapterO ...
相关推荐
该资源提供了在Java中如何实现计数排序的全面指南。文档涵盖了计数排序的基本概念,包括如何对数组进行排序以及如何在Java中实现计数排序。此外,文档还包括一个逐步指南,介绍了如何在Java中实现计数排序,包括详细...
Java 排序算法 - 计数排序 计数排序(Counting Sort)是一种非比较排序算法,它的基本思想是统计数组中每个元素出现的次数,然后根据元素出现的次数依次将元素放入有序的数组中。计数排序时间复杂度为 O(n+k),其中...
游戏逻辑(如洗牌、发牌等)可能在一个独立的线程中执行,以避免阻塞UI。 5. **算法与数据结构**:蜘蛛纸牌游戏的规则涉及到排序、比较和移除等操作,这需要有效的算法和数据结构支持。例如,使用栈(Stack)来模拟...
在这个“java swing实现蜘蛛纸牌”的项目中,开发者使用Swing来创建了一个经典的蜘蛛纸牌游戏。接下来,我们将深入探讨Java Swing在游戏开发中的应用,以及蜘蛛纸牌游戏的基本规则和实现原理。 首先,Java Swing...
空当接龙是一款广受欢迎的单人纸牌游戏,通过组织和移动纸牌,最终目标是将所有牌按照花色从A到K排序。 首先,我们要理解Java的基础知识。Java是一种面向对象的编程语言,由Sun Microsystems(现已被Oracle收购)于...
在这个Java蜘蛛纸牌项目中,源代码可能是由一系列类、方法和逻辑控制结构组成的,用于实现游戏的各种功能,如洗牌、发牌、移动牌堆等。Java是一种面向对象的编程语言,它以其跨平台性和强大的库支持而受到广大开发者...
Java代码-排序-直接插入排序、希尔排序、直接选择排序、冒泡排序、堆排序、快速排序、归并排序中部分排序以及算法-贪心法,大家可以将源码下载下来进行学习,附带着注释和解释,有不理解的可以找博主一起探讨,共同...
【Java实现的蜘蛛纸牌源代码】是一种基于Java编程语言开发的桌面游戏,它复现了经典的蜘蛛纸牌玩法。这种游戏通常包括排列和消除纸牌以完成关卡的目标。在给定的压缩包中,有两个主要部分:打包发布的可执行文件和...
3. **牌堆类**:管理纸牌的堆栈,实现洗牌、发牌、移动牌等操作。 4. **游戏逻辑类**:包含蜘蛛纸牌的规则和算法,用于判断游戏状态和执行合法操作。 5. **用户界面类**:使用Java的Swing或JavaFX库构建图形用户界面...
Java代码实现的蜘蛛纸牌项目不仅是一个有趣的编程练习,也能够帮助开发者提升面向对象编程、图形界面设计和算法设计的能力。通过分析和理解这个项目,我们可以学习到如何将复杂的游戏逻辑转化为清晰的代码结构,以及...
### 纸牌游戏中的洗牌与发牌过程——基于C语言实现 #### 概述 本篇文章将详细介绍一个基于C语言实现的纸牌洗牌与发牌过程的程序。该程序通过一系列算法实现了随机洗牌及按照规定规则进行发牌的功能,并能够直观地...
里面的Gs.java是算法文件。另外一个带图形界面的swing类文件可以忽略不看。 算法的输入是两个矩阵data_man 和data_woman。 data\1 里面的数据对应了男士优先的gs算法,2对应了女士优先的算法。 其中矩阵的输入代表了...
算法 - Java Build Discord chat Gitpod ready-to-code Open in Gitpod 您可以运行和编辑算法,或者只需单击一下即可使用 Gitpod.io(免费的在线开发环境)为算法做出贡献。 算法: 我们的目录包含完整的应用程序...
以下是基于标题“数据结构与算法-java”及描述中提到的“数据结构与算法分析_Java语言描述高清版(第2版)1.pdf”所涵盖的一些关键知识点: 1. **数据结构**: - **数组**:最基础的数据结构,存储固定大小的同类型...
总的来说,"蜘蛛纸牌JAVA程序"是一个综合性的项目,涵盖了JAVA编程的基础到进阶知识,对初学者来说,既能锻炼基本的编程技能,也能提升对面向对象编程、GUI开发、数据结构和算法的理解。通过实际操作,学习者可以在...
银行家算法-java语言
【洗牌算法】是计算机科学中用于生成等概率随机序列的一种方法,常见于各种需要随机化元素顺序的场景,如游戏、模拟等。洗牌算法的主要目标是确保原数组中的每个元素在打乱后都有相等的概率出现在序列的任何位置。 ...
总的来说,JavaCV 1.3提供了一个跨平台的解决方案,将计算机视觉、音频视频处理的强大功能与Java的易用性相结合,大大降低了开发复杂视觉应用的门槛。通过这个`javacv-platform-1.3-bin.zip`压缩包,你可以快速地在...
Java实现的k-means聚类算法详解 k-means聚类算法是一种常用的无监督学习算法,用于对数据进行聚类分析。该算法的主要思想是将相似的数据点聚类到一起,形成不同的簇。Java语言是实现k-means聚类算法的不二之选。 ...