算法随笔

1.输入接受一个数字 n ,求一个队列,该队列由数字[1...n]组成, 且满足不断将队头元素移到队尾,然后输出队头,如此循环,最后的输出是有序的。

  分析:用有序的队列 [0...n-1] 模拟出队后移,出队输出的操作。

    public static void getQueue(int n){
        int[] map = new int[n];
        LinkedList<Integer> queue = new LinkedList<Integer>();
        for(int i = 0 ; i < n; i ++) queue.add(i);
        int pos = 1;
        while(!queue.isEmpty()){
            queue.addLast(queue.removeFirst());
            map[queue.removeFirst()] = pos ++;
        }
        for(int i = 0 ; i < map.length ; i ++) {System.out.print(map[i] +" ");}
        System.out.println();
    }

时间: 2024-10-09 11:54:19

算法随笔的相关文章

算法随笔一(背包问题)

今天逛园子,偶然看到了"背包问题",于是上网找了下相关资料,并写了个简单的实现方案. 何为背包问题? 简单理解,就是给了一堆物品跟一个包,每个物品都有相应的重量和价值,包有自己的承重.我们要做的就是在包的承重范围内,往包里装下价值总量最高的物品. 如何解决背包问题? 一般采用递归的方法,对每次放入物品进行数学建模.每次放入物品都会有两种选择(前提是该物品能放入): 1. 放入该物品,那么问题转换成,减去该物品的重量,包剩余的容量最多能装下多少价值的物品. 2. 不放入该物品,那么问题转

terasort 算法随笔

1) NullWritable是Writable的一个特殊类,序列化的长度为,实现方法为空实现,不从数据流中读数据,也不写入数据,只充当占位符,如在MapReduce中,如果你不需要使用键或值,你就可以将键或值声明为NullWritable,NullWritable是一个不可变的单实例类型. 2)

Matlab随笔之模拟退火算法

问题描述: 我方有一个基地,经度和纬度为( 70,40).假设我方飞机的速度为 1000 公里/小时. 我方派一架飞机从基地出发,侦察完敌方所有目标,再返回原来的基地.在敌方每一目 标点的侦察时间不计,求该架飞机所花费的时间(假设我方飞机巡航时间可以充分长). 这是一个旅行商问题.我们依次给基地编号为 1,敌方目标依次编号为 2, 3,…, 101, 最后我方基地再重复编号为 102(这样便于程序中计算). 距离矩阵 D = ( dij )102×102 , 其中 dij 表示表示 i, j 两

&lt;&lt;数据结构与算法Javascript描述&gt;&gt;随笔笔记

序言: 程序问题三步走-->① 将问题抽象为数据结构 -->② 并根据相关算法来操作数据结构 -->③ 调用API来显示结果 一.数组和列表 二.栈和队列 三.链表 四.字典 五.散列 六.集合 七.二叉树 八.图 九.热门算法 

心情随笔 &amp;&amp; 算法笔记(1)

高二了,离知道NOIP已经过去一年了,感觉很彷徨,毕竟是第一次参加noip,有点担心连初赛都过不了,泉州这种神犇云集的地方ORZ:曾经想过如果自己但是不考108将而去考泉五会是什么结果,不过那样可能我就不会知道noip了吧233.感觉自己超级颓废,去年说好的刷500题的,到现在只刷了40几题,还有几题是水题233.曾经也有过许多幻想,但最终还是没能去完成,希望这次会有些结果吧,毕竟已经透支了太多的希望了,无法想象连初赛都没办法通过时自己会是怎样的心情.上学期期末考差时自己的无所谓的心情至今还会后

关于BP算法在DNN中本质问题的几点随笔 [原创 by 白明] 微信号matthew-bai

随着deep learning的火爆,神经网络(NN)被大家广泛研究使用.但是大部分RD对BP在NN中本质不甚清楚,对于为什这么使用以及国外大牛们是什么原因会想到用dropout/sigmoid/ReLU/change learnRate/momentum/ASGD/vanishment等问题等呢.要想了解国外大牛的思考过程,需要学习到BP在NN中的本质问题,其中涉及到NN训练对于判决边界如何形成?ASGD为什么尤其在NN中效果比二阶信息效果好?如何选择激活函数合适?为何语音识别中误差函数选择互

MySQL学习随笔--通过实例理解merge ,temptable算法的差异

实例1 使用视图的两种算法merge和temptable分别统计 表tb_phone中market_price大于4000的手机,然后查询视图查找出小于6000的手机 简单总结最终获取的结果:查询出market_price大于4000且小于6000的手机 表数据: merge合并算法 合并的执行方式,每当执行的时候,先将视图的sql语句与外部查询视图的sql语句,合并在一起,最终执行. 以下是使用常规select语句模拟合并算法: 执行结果模拟与算法的结果相同: temptable临时表算法 先

机器学习随笔01 - k近邻算法

算法名称: k近邻算法 (kNN: k-Nearest Neighbor) 问题提出: 根据已有对象的归类数据,给新对象(事物)归类. 核心思想: 将对象分解为特征,因为对象的特征决定了事对象的分类. 度量每个特征的程度,将其数字化. 所有特征值构成元组,作为该对象的坐标. 计算待检测对象和所有已知对象的距离,选择距离最接近的k个已知对象 (k近邻中的k来源于此). 这k个对象中出现次数最多的分类就是待检测对象的分类. 重要前提: 需要有一批已经正确归类了的对象存在.也就是通常说的训练数据. 重

基于Pytorch框架实现ENAS算法优化的图像识别技术探索-α迭代随笔

设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们希望通过将ENAS的网络架构优化算法转变为实例化项目,能够在有一定实际意义下解决对于Pytorch图像识别的探索问题. 项目性质为科研项目,由于是依托算法研究产生产品,故对于产品本身性质并不明确,通过与老师交流后初步定义为基于微信前端与后台学习框架交互的识别平台,主要以微信小程序的交互形式开放给用户. 对于典型用户,实质为使用微信且对于某些特定物品有识别需求的人.而对于典型场景来说,目标是达