队列之数字解密
来源:互联网 发布:win10应用网络权限设置 编辑:程序博客网 时间:2024/04/30 06:14
本博文分为三个部分:一是题目;二是解题程序;三是总结。
一、题目
首先将第一个数删除,紧接着将第二个数放到这串数的末尾,再将第三个数删除并将第四个数放到这串数的末尾,再将第五个数删除……直到剩下最后一个数,将最后一个数删除。按照刚才的删除顺序,把这些删除的数连在一起就是解密后的号码。
梨子~631758924~615947283
二、程序
import java.util.Scanner;class Queue{ int[] data = new int[1000]; int head,tail; public Queue(int head,int tail,int n){ this.head = head; this.tail = tail; for(int i=1;i<=n;i++){ this.data[i] = 0; } }}public class BB0102queue{ private static Queue q; static int n; public static void main(String[] args){ Scanner reader = new Scanner(System.in); //读入数据 n = reader.nextInt(); q = new Queue(1,1,n); for(int i=1;i<=n;i++){ q.data[i] = reader.nextInt(); q.tail++; } while(q.tail>q.head){ //打印队首并将队首出列 System.out.print(q.data[q.head] + "\t"); q.head++; //先将队首的数放至队尾 q.data[q.tail] = q.data[q.head]; q.tail++; //再将队首出列 q.head++; } }}
三、总结
1 队列的概念:
1)出队:只允许在队列的收不进行删除操作;
2)入队:在队列的尾部进行插入操作;
3)空队列:当队列中没有元素时(这里的一个知识点是head用来记录队列的队首,即第一位;tail用来记录队列的队尾的下一个位置,即最后一位的下一个位置;这样做的好处是当head==tail的时候,该队列为空
2 关于如何使用java的类来实现C中结构体的性质,本文就将整个队列封装成一个类,包含了一个数组和两个变量,此外还有创建对象时构造函数的应用
3 在实际的编程中,对于queue中变量,不是像本文一样直接进行操作,而是开放接口通过方法调用对变量进行操作,这里变量设为private,来保证安全性
4 注释快捷键: ctrl+”/”
5 查看源码的方法:ctrl+鼠标左键点击
0 0
- 队列之数字解密
- 数字解密(vector,队列方式)
- 解密QQ号--队列
- 数字多媒体技术解密
- 解密数字游戏
- 队列浅析[解密QQ号]
- PHP数字加密解密类
- c算法-数字加密解密
- 数字加密解密类-php
- c++ 螺旋数字队列
- 队列之顺序队列
- 队列之顺序队列
- 队列之顺序队列
- 队列之循环队列
- 队列之链队列
- 队列之循环队列
- 队列之顺序队列
- 解密QQ号——队列
- Git相关
- 对象循环引用与序列化问题
- ortp数据收发调度器源码分析
- SqlServer端口修改
- springboot整合mybaitis
- 队列之数字解密
- EF的三种模式
- Python学习之[6]——数字
- Java真数组与伪数组
- 跟小博老师一起学Servlet ——Servlet之属性操作
- 编写更好的Java单元测试的七个技巧
- mybatis 动态 SQL
- 扩展lucas背诵用模板
- qt opengl中 glReadPixels 获取鼠标位置的颜色失效 处理方法