随笔分类 - 牛客编程题
摘要:11、求1+2+3+....n 题目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 方法1:条件表达式 public class Solution { public int Sum_Solution
阅读全文
摘要:8、[位运算技巧系列]不用加减乘除做加法 ^(异或) 知识点:(同为0,异为1) 0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0 其他 如何左移 左移操作就是最高位抛弃 后的每一位向左前进一位, 最后一位补0 如: 101 左移1位:101-->>先补全四位0101 >>抛弃最高位0,且后边补一位
阅读全文
摘要:12、数值的整数次方 题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0 我的思考 1、如果次方是正树,即直接循环累乘即可; 2、如果次方是0的话,任何数的0次方都是1; 3、如果次方是小
阅读全文
摘要:7、构建乘积数组[♥♥♥♥] 题目: 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]A[1]...*A[i-1]A[i+1]...*A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * ... * A
阅读全文
摘要:6、变态跳台阶 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法 当然,你会发现一个规律: f[0] = f[1] = 1 f[2] = 2 = 21 f[3] = 4 = 22 f[4] = 8 = 23 ... **f[n] = 2**
阅读全文
摘要:5、剑指 Offer 10- II. 青蛙跳台阶问题 动态规划 详细题解:https://leetcode-cn.com/problems/qing-wa-tiao-tai-jie-wen-ti-lcof/solution/mian-shi-ti-10-ii-qing-wa-tiao-tai-jie
阅读全文
摘要:剑指 Offer 50. 第一个只出现一次的字符 题目要求 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 我的思考 使用无序的哈希表(HashMap)和有序的哈希表(LinkedHashMap)都能解决此问题,但是,我们还是使用无序的哈希表会更
阅读全文
摘要:4、二维数组中的查找 带行列中止验证的比较(自写) class Solution { public boolean findNumberIn2DArray(int[][] matrix, int target) { for (int i = 0; i < matrix.length; i++) {
阅读全文
摘要:9、二叉树镜像 操作给定的二叉树,将其变换为源二叉树的镜像。 其他方法 方法1:递归代码 /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int
阅读全文
摘要:10、补充基础:栈与队列模型 (1)Queue PriorityQueue PriorityQueue是Queue队列实现类,PriorityQueue保存队列元素的顺序不是按照加入队列的顺序,而是按照队列元素的大小进行重新排序。当调用peek()或者poll()方法获取队列元素时,获取的是队列最小
阅读全文
摘要:3、数组中重复的数字 方法1:简单排序排序思想比较 //方法1:确定临时最小值,后续匹配(类似简单选择排序思想) public int findRepeatNumber(int[] nums) { for (int i = 0; i < nums.length; i++) { int temp =
阅读全文
摘要:1、用两个栈实现队列 1.1、[牛客]用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 package jianzhioffer; import java.util.Stack; /** * @author jiyongjia * @create 2020/6/1
阅读全文
摘要:2、斐波那契数列 方法1: 使用迭代for循环,效率高 /** * 时间上可以不超时 * int f[]={0,1,1,2,3,5,8,13,21,34...] */ public static int fib2(int n) { if (n==0 || n==1){ return n; } els
阅读全文
摘要:左旋转字符串(Java)-循环Index方式 题目要求 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“
阅读全文
摘要:> 题目要求 链接:https://www.nowcoder.com/questionTerminal/00de97733b8e4f97a3fb5c680ee10720?answerType=1&f=discussion来源:牛客网请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符
阅读全文

浙公网安备 33010602011771号