`
mybwu_com
  • 浏览: 200107 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

算法练习--卡片游戏

 
阅读更多
桌上有一叠牌,从第一张牌(即位于顶面的牌)开始从上往下依次编号为1-n。进行以下操作:把第一张牌扔掉,然后把心得第一张放到整叠牌的最后。输入N,输出每次扔掉的牌,以及最后剩下的牌。
例如 输入 7
输出 1357426


实现:

function f(n){
var arr = new Array();
for(var i = 0;i < n; i++){arr.push(i+1);}


var ret = new Array();


for(;arr.length > 1;){
var toThrow = arr[0];
arr.splice(0,1);
ret.push(toThrow);


var toLast = arr[0];
arr.splice(0,1);
arr.splice(arr.length,1,toLast);


}
ret.push(arr[0]);


return ret;
}


console.log(f(7));


分享到:
评论

相关推荐

    编程算法练习--没事的时候练练

    ### 编程算法练习知识点详解 #### 知识点一:斐波那契数列 - **描述**:斐波那契数列是一系列数字,其中每个数字是前两个数字的和,通常从1和1开始。 - **实现思路**: - 使用循环或递归方法来生成数列。 - 循环...

    算法练习-选择排序-少儿编程scratch项目源代码文件案例素材.zip

    在这个"算法练习-选择排序"的少儿编程项目中,我们将深入学习和探讨选择排序这一经典算法,并通过Scratch游戏案例进行实践。 选择排序是一种简单直观的排序算法,它的基本思想是在未排序序列中找到最小(或最大)...

    《算法竞赛实战笔记》题单.pdf

    队列则是一种先进先出(FIFO)的数据结构,适用于解决如约瑟夫问题、卡片游戏排序等场景。通过栈和队列的练习,参赛者能够掌握基本的数据结构操作技巧。 前缀和是一种预处理技术,用于快速计算数组或序列中任意区间...

    基于Python卡牌游戏设计与数据结构实现

    使用场景及目标:用Python手写实现一个简化的UNO牌游戏逻辑以练习复杂的数据结构与算法。理解各种特殊卡牌(例如Skip卡,反转Play方向的Reverse卡)的作用,学习构建游戏环境并执行游戏操作,同时训练选手解决实际...

    leetcode卡-data-structure-algorithm:数据结构与算法练习与整理

    数据结构与算法练习与整理 leetcode 练习 es6编写代码 jest做单元测试 简单算法 字符串 数组 正则 排序 递归 字符串 知识点: String.prototype.split String.prototype.match Array.prototype.map Array.prototype....

    java小练习,Java练习小程序,Java必用

    17. **卡牌游戏**: - 设计一个简单的卡牌游戏,模拟玩家抽牌和对战的过程。 - 需要定义卡牌类、玩家类等基本数据结构。 - 示例:每次抽牌后,玩家的手牌数量减少一张,对手的血量减少相应的点数。 18. **队列...

    leetcode卡-leetcode:每日算法练习

    算法题练习 说明: 大部分题实现都在C++文件夹中 最开始是想着一方面熟悉PHP的语法,同时提示一下自己的算法能力。但是后来实在是觉得PHP的数组和HashMap不分家对算法支持不太友好(也可能是OC转PHP不太熟悉的原因)。...

    C++控制台游戏之--斗地主

    斗地主是一款广受欢迎的三人卡牌游戏,通过控制台实现,可以让玩家在没有图形界面的情况下体验游戏乐趣。 在C++编程中,控制台游戏的开发主要涉及到以下几个关键知识点: 1. **基本数据结构**:为了存储和操作牌,...

    iOS游戏 纸牌比点数

    3. **卡牌点数比较**:在游戏逻辑中,卡牌点数的比较涉及到数据结构和算法。可能的实现方式是将每张卡牌表示为一个对象,包含点数属性。比较时,可以通过比较这些对象的点数属性来决定胜负。 4. **数组**:在iOS...

    C++编程实现的双人卡牌战斗游戏逻辑代码解析

    内容概要:本文是一段C++编写的控制台游戏程序,模拟了两名玩家之间的卡片对决。每个玩家有4张卡牌以及基本属性如血量(HP)、状态值(ZT)和防御力(DEF)。卡牌有不同的攻击力(ATK)、回血能力(HPI)、增防能力...

    java记忆游戏源码

    Java记忆游戏是一种常见的编程练习,它可以帮助初学者理解面向对象编程的基本概念,如类、对象、方法以及事件处理。在这个项目中,我们主要会探讨以下几个核心知识点: 1. **Java基础语法** - 变量声明与数据类型...

    c#课程设计 翻牌游戏

    翻牌游戏通常指的是玩家需要通过翻动一对对隐藏的卡片来匹配相同图案的游戏,这在软件开发中是一个很好的练习案例,因为它涉及到用户交互、状态管理以及算法设计等多个方面。 首先,我们需要了解C#语言的基本语法和...

    algorithm-pattern-c:算法模板(c++), 包含数据结构,基础算法和算法思维篇

    算法模板 本库是对原有库的C++实现, 如有问题请; 在线文档 在线文档 Gitbook: 基础知识 :check_mark_button: 剑指Offer题解 :check_mark_button: ...1、 algorithm-pattern 练习题 2、 LeetCode 卡片 3、 剑指 offer

    Java课程设计--24点卡牌游戏.zip

    这包括对卡牌进行排序、检查合法性(例如,确保每次运算后的结果仍在1到24之间)、以及实现各种数学运算的函数。这部分代码需要充分考虑边界条件和异常处理,以确保游戏的稳定运行。此外,为了增加可玩性,游戏还...

    AS3翻牌游戏代码

    - 胜利条件:所有卡片都找到匹配后,游戏胜利。 3. **用户界面(UI)**: - 图形绘制:使用Flash的DisplayObject类(如Sprite和Bitmap)来创建和绘制卡片图形。 - 事件监听:添加EventListener监听鼠标点击事件...

    数据结构分章练习习题与答案

    本资源“数据结构分章练习习题与答案”是针对山东科技大学泰科院09J信息专业学生的官方习题集,旨在帮助学生深入理解和掌握数据结构的基本概念、算法和应用。 章节一:绪论 在这一章,学生将学习数据结构的基础知识...

    翻牌小游戏

    在.NET平台上,开发一款翻牌小游戏是一种常见的编程练习,它能够帮助开发者熟悉基本的图形用户界面(GUI)编程、事件处理和算法设计。翻牌游戏,又称记忆匹配游戏,是通过翻转一对一对的卡片来寻找相同图案的游戏,...

    《算法竞赛实战笔记》题单(2025.01.27)C.pdf

    队列相关的题目包括“卡片游戏”,需要模拟出一系列卡片的存取;“基数排序的过程”和“海港”,则展示了如何利用队列进行高效的排序和数据处理。 前缀和是一种求解连续子数组和问题的技巧,可以快速计算任意区间内...

    Java翻牌小游戏.zip

    游戏的核心算法涉及到数组、哈希表、计数器等数据结构和算法。 1. **Java基础知识**:这个项目是用Java编写的,因此涉及到Java的基础语法,包括类、对象、封装、继承、多态等面向对象特性。同时,也运用了异常处理...

Global site tag (gtag.js) - Google Analytics