package com.example.demo; import java.util.ArrayList; public class Stack { ArrayList<Object> list = new ArrayList<>(); //入栈 public void push(Object o){ list.add(o); } //出栈 public Object pop(){ Object o = list.); list.remove(o); return o; } //栈…
package com.example.demo; import java.util.ArrayList; public class Queue { ArrayList<Object> list = new ArrayList<>(); //入队 public void in(Object o) { list.add(o); } //出队 public Object out() { Object o = list.); list.remove(o); return o; } //队…
/*顺序表实现队列的一系列操作(设置flag标志不损失数组空间)*/ #include<stdio.h> #include<stdlib.h> #define Queue_Size 50 //队列的最大长度 #define OK 1 #define ERROR 0 typedef struct { int elem[Queue_Size]; //队列的元素空间 int front; //头指针指示器 int rear; //尾指针指示器 int flag; //flag,判断队列是…
/*链表实现队列的一系列操作*/ #include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 typedef struct node { int data; //数据域 struct node *next; //指针域 }LinkQueueNode; typedef struct { LinkQueueNode *front; //头指针 LinkQueueNode *rear; //尾指针 }LinkQueu…
入队 Node AQS同步队列和等待队列共用同一种节点结构Node,与同步队列相关的属性如下. prev 前驱结点 next 后继节点 thread 入队的线程 入队节点的状态 INITIAl 0 初始状态.当一个节点刚刚被加入同步队列时的默认值 SIGNAL -1 状态为-1的Node意味着该节点有一个后继节点在等待,也就是说如果Status=-1的节点释放锁后需要他的后继节点(next).一个节点的waitStatuc被设置成-1只能有其后继节点设置,自己不能设置. CONDITION -2…
什么是约瑟夫环? 就是数小孩游戏: 直接上代码: 要实现这个,只需要理清思路就好了 孩子节点: class Boy{ int no;//当前孩子的编码 Boy next; // 下一节点 public Boy(int no) { this.no = no; } public Boy(int no, Boy next) { this.no = no; this.next = next; } @Override public String toString() { return "Boy{"…
优先队列也是一种先进先出的数据结构,元素从队尾入队,从队头出队,但是优先队列相较一般队列多了一个判断优先级的功能,在当前队列中,优先级最高的元素将被第一个删除. 先看一下优先队列的定义 template<class _Ty, class _Container = vector<_Ty>, class _Pr = less<typename _Container::value_type> > class priority_queue 第一个参数就是你要插入的类,比如int…
JS优先队列排序.出队时,先找出优先级最高的元素,再按照先进先出出队. /* * 优先队列 * 出队时,先找出优先级最高的元素,再按照先进先出出队. * */ function Queue(){ this.dataStore = [];//存放队列的数组,初始化为空 this.enqueue = enqueue;//向队列尾部添加一个元素 this.dequeue = dequeue;//出队时,先找出优先级最高的元素,再按照先进先出出队. this.theFront = theFront;//…
传送门 :B题:点我 C题: 点我 题目描述 有n个队伍,每个队伍的人数小于等于5,每辆车最多坐5个人,要求一个队伍的人都在一辆车上,求最少的车数 输入描述: 第一行n第二行n个数,表示每个队伍的人数 输出描述: 输出最少车数 输入例子: 3 3 4 5 输出例子: 3 --> 示例1 输入 3 3 4 5 输出 3 备注: n≤1e5每个数小于等于5 思路:大力模拟.5自己一车,4跟1一车,然后3跟2一车,2的时候分情况考虑,如果2是偶数,那么2+2+1或者2+2,如果2是奇数,那么分成偶数+…
1. 前言 队列,是一种遵从先进先出(FIFO,First-In-First-Out)原则的有序集合.队列在尾部添加新元素,并从顶部移除元素,最新添加的元素必须排在队列的末尾. 2.功能说明 enqueue(value):进队,添加一个新元素到队列末尾 dequeue():出队,移除队列中的第一个元素,同时返回该元素 front():获取队列中的第一个元素 isEmpty():判断队列是否为空.是返回true,否返回fallse clear():清空队列里的元素 size():获取队列里元素的个…