算法
wcc_Learning
学无止境
展开
-
js实现队列及ES6优化
ES5let items = [];function Queue() { //队列添加元素 this.enqueue = function (element) { items.push(element); } //队列移除元素 this.dequeue = function () { items.shift(); } //查看队头元素 this.front = function () {原创 2020-08-25 11:37:28 · 390 阅读 · 0 评论 -
js实现栈及ES6优化
ES5function Stack() { let items = []; //公共的 //向栈添加元素 this.push = function (element) { items.push(element); } //从栈移除元素 this.pop = function () { items.pop(); } //查看栈顶元素 this.peek = function () {原创 2020-08-25 11:32:59 · 188 阅读 · 0 评论 -
旋转数组的最小数字
function minNumberInRotateArray(rotateArray){ // write code here if(rotateArray.length==0){ return 0; } var minVal=rotateArray[0]; for(var i=1;i<rotateArray.length;i++){ if(rotateArray[i]<minVal){ min.原创 2020-07-04 17:26:48 · 91 阅读 · 0 评论 -
领扣算法简单------两数之和---js版
56.两数之和中文English给一个整数数组,找到两个数使得他们的和等于一个给定的数target。你需要实现的函数twoSum需要返回这两个数的下标, 并且第一个下标小于第二个下标。注意这里下标的范围是 0 到n-1。样例Example1:给出 numbers = [2, 7, 11, 15], target = 9, 返回 [0, 1].Example2:给出 numbers = [15, 2, 7, 11], target = 9, 返回 [1, 2].挑战...原创 2020-05-26 14:18:26 · 138 阅读 · 0 评论 -
剑指Offer---面试题3:数组中重复数字
三种方法:package dataStructure;import java.util.HashMap;import java.util.Map;public class array { //数组中重复数字 public static void main(String[] argv){ Integer[] arr=new Integer[]{2,3,1,0,2,5,3}...原创 2020-03-10 22:08:43 · 119 阅读 · 0 评论 -
领扣算法简单------O(1)时间检测2的幂次---java版
用 O(1) 时间检测整数n是否是2的幂次。样例Example 1: Input: 4 Output: trueExample 2: Input: 5 Output: falsepublic class Solution { /** * @param n: An integer * @return: True or false ...原创 2020-03-09 21:41:57 · 116 阅读 · 0 评论 -
领扣算法简单------Fizz Buzz 问题---java版
给你一个整数n. 从1到n按照下面的规则打印每个数:如果这个数被3整除,打印fizz. 如果这个数被5整除,打印buzz. 如果这个数能同时被3和5整除,打印fizz buzz. 如果这个数既不能被3整除也不能被5整除,打印数字本身。样例比如n=15, 返回一个字符串数组:[ "1", "2", "fizz", "4", "buzz", "fiz...原创 2020-02-27 20:49:21 · 237 阅读 · 0 评论 -
java实现页面调度算法
package items_9;import java.util.ArrayList;import java.util.List;import java.util.Scanner;public class ymzh { //最佳置换算法(OPT)--- 无法实现 public static void opt(List<Integer> list){} //先进先...原创 2019-12-19 17:51:15 · 828 阅读 · 0 评论 -
java实现银行家算法
package items_7;import java.util.ArrayList;import java.util.Scanner;public class banker { //判断安全序列里是否已有某序列 public static boolean isExist(int[] safeList,int k){ int flag=0; for(int i=0;i<...原创 2019-12-12 11:45:16 · 173 阅读 · 0 评论 -
领扣算法简单------A + B 问题---js和java版
给出两个整数aa和bb, 求他们的和。样例样例 1:输入: a = 1, b = 2输出: 3 样例解释: 返回a+b的结果.样例 2:输入: a = -1, b = 1输出: 0 样例解释: 返回a+b的结果.挑战显然你可以直接 return a + b,但是你是否可以挑战一下不这样做?(不使用++等算数运算符)说明a和b都是32...原创 2019-08-24 21:57:02 · 336 阅读 · 0 评论 -
领扣算法入门------二叉树的最大节点---java版
在二叉树中寻找值最大的节点并返回。样例样例1:输入:{1,-5,3,1,2,-4,-5}输出: 3说明:这棵树如下所示: 1 / \ -5 3 / \ / \1 2 -4 -5样例 2输入:{10,-5,2,0,3,-4,-5}输出: 10说明:这棵树如下所示: 10 / \ -5 ...原创 2019-08-20 16:18:02 · 127 阅读 · 0 评论 -
领扣算法入门------反转一个3位整数---js和java版
反转一个只有3位数的整数。样例样例 1:输入: number = 123输出: 321样例 2:输入: number = 900输出: 9注意事项你可以假设输入一定是一个只有三位数的整数,这个整数大于等于100,小于1000。js语言/** * @param number: A 3-digit number. * @return: Rev...原创 2019-08-19 11:32:16 · 713 阅读 · 0 评论 -
领扣算法入门------大小写转换---js和java版
将一个字符由小写字母转换为大写字母样例样例 1:输入: 'a'输出: 'A'样例 2:输入: 'b'输出: 'B'js语言/** * @param character: a character * @return: a character */const lowercaseToUppercase = function (character) { ...原创 2019-08-19 12:45:28 · 163 阅读 · 0 评论 -
领扣算法入门------三数之中的最大值---js和java版
给三个整数,求他们中的最大值。样例样例 1: 输入: num1 = 1, num2 = 9, num3 = 0 输出: 9 样例解释: 返回三个数中最大的数。样例 2: 输入: num1 = 1, num2 = 2, num3 = 3 输出: 3 样例解释: 返回三个中最大的数字。js语言/** * @param num1: An int...原创 2019-08-19 12:56:33 · 131 阅读 · 0 评论 -
领扣算法入门------斐波纳契数列---js和java版
查找斐波纳契数列中第 N 个数。所谓的斐波纳契数列是指:前2个数是 0 和 1 。 第i个数是第i-1 个数和第i-2 个数的和。斐波纳契数列的前10个数字是:0, 1, 1, 2, 3, 5, 8, 13, 21, 34 ...样例样例 1: 输入: 1 输出: 0 样例解释: 返回斐波那契的第一个数字,是0.样例 2: 输入: 2 输...原创 2019-08-20 10:34:52 · 137 阅读 · 0 评论 -
领扣算法入门------矩阵面积---java版
实现一个矩阵类Rectangle,包含如下的一些成员变量与函数:两个共有的成员变量width和height分别代表宽度和高度。 一个构造函数,接受2个参数 width 和 height 来设定矩阵的宽度和高度。 一个成员函数getArea,返回这个矩阵的面积。样例样例1:Java: Rectangle rec = new Rectangle(3, 4); ...原创 2019-08-20 10:48:18 · 108 阅读 · 0 评论 -
领扣算法入门------整数排序---js和java版
给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。样例样例 1: 输入: [3, 2, 1, 4, 5] 输出: [1, 2, 3, 4, 5] 样例解释: 返回排序后的数组。样例 2: 输入: [1, 1, 2, 1, 1] 输出: [1, 1, 1, 1, 2] 样例解释: 返回排好序的数组。j...原创 2019-08-20 15:07:29 · 110 阅读 · 0 评论 -
领扣算法入门------链表节点计数---js和java版
计算链表中有多少个节点.样例样例 1: 输入: 1->3->5->null 输出: 3 样例解释: 返回链表中结点个数,也就是链表的长度.样例 2: 输入: null 输出: 0 样例解释: 空链表长度为0js语言/** * @param head: the first node of linked list. * @...原创 2019-08-20 15:42:38 · 216 阅读 · 0 评论 -
领扣算法入门------交换数组两个元素---js和java版
你一个数组和两个索引,交换下标为这两个索引的数字样例样例 1:输入: [1, 2, 3, 4], index1 = 2, index2 = 3输出: 交换后你的数组应该是[1, 2, 4, 3], 不需要返回任何值,只要就地对数组进行交换即可。样例解释: 就地交换,不需要返回值。样例 2:输入: [1, 2, 2, 2], index1 = 0, index2 ...原创 2019-08-20 15:48:41 · 122 阅读 · 0 评论 -
C++算法基础之头文件
#include<cstdio> 在C++中拥有在C语言里一样的语法,像输入输出。#include<cstring> 包含很多字符串函数,如复制、比较是否相等、字符串连接。#include<iostream> 输入输出流,包括输出格式的控制#include<cstdlib> 在C++中拥有在C语言里一样的语法,像开...原创 2019-03-15 22:34:07 · 5516 阅读 · 0 评论