zoukankan      html  css  js  c++  java
  • [Java] 数组-04 面向对象的约瑟夫环 (Good!)

    package com.bjsxt.chap5;
    
    public class Count3Quit2 {
        public static void main(String[] args) {
            KidCircle kc = new KidCircle(500);
            int countNum = 0;
            Kid k = kc.first;
            while (kc.count > 1) {
                countNum ++;
                if (countNum == 3) {
                    countNum = 0;
                    kc.delete(k);
                }
                k = k.right;
            }
            System.out.println(kc.first.id);
        }
    }
    class Kid {
        int id;
        Kid left;
        Kid right;
    }
    class KidCircle {
        int count = 0;
        Kid first, last;
        
        KidCircle(int n) {
            for (int i = 0; i < n; i++) {
                add();
            }
        }
        void add() {
            Kid k = new Kid();
            k.id = count;
            if (count <= 0) {
                first = k;
                last = k;
                k.left = k;
                k.right = k;
            }
            else {
                last.right = k;
                k.left = last;
                k.right = first;
                first.left = k;
                last = k;
            }
            count++;
        }
        void delete(Kid k) {
            if (count <= 0) return;
            else if (count == 1) {
                first = last = null;
            }
            else {
                k.left.right = k.right;
                k.right.left = k.left;
                
                if (k == first) {
                    first = k.right;
                }
                else if (k == last) {
                    last = k.left;
                }
            }
            count --;
        }
    }
    

  • 相关阅读:
    hutool工具之验证码登录
    jsp下拉框
    MyBatis错误之找不到实体类
    MybatisDay1
    JDBCUtil
    JDBC-1
    SQL学习笔记day01
    CoreJava基础面试题
    每日leetcode-数组-54. 螺旋矩阵
    每日leetcode-数组-396. 旋转函数
  • 原文地址:https://www.cnblogs.com/robbychan/p/3786577.html
Copyright © 2011-2022 走看看