算法天天练系列
JAVA小摩托不堵车
每一个不曾起舞的今日,都是对以往时光的辜负。
展开
-
给出一个字符串形式的算式(包含括号和加减乘除),计算结果
例如:给出str="(11+9)*50/5+3"输出:203import javax.script.ScriptEngine;import javax.script.ScriptEngineManager;import javax.script.ScriptException;/** * @author zll * @Date {} */public class ok { public static void main(String[] args) { Stri原创 2020-11-23 10:23:27 · 1289 阅读 · 0 评论 -
剑指offer——2、替换字符串
题目请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解法提供了两种方法实现字符串的替换。具体见代码。方法一:利用String类的replace方法方法二:利用循环charAt(),建立新的StringBuilder进行append拼接操作。public class test02...原创 2020-11-23 13:00:58 · 105 阅读 · 0 评论 -
数据结构与算法——如何计算算法的时间复杂度
1、如何计算算法的时间复杂度常见的算法时间复杂度由小到大依次为:Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n2)<Ο(n3)<…<Ο(2n)<Ο(n!)怎样求解算法的时间复杂度呢?⑴ 找出算法中的基本语句;算法中执行次数最多的那条语句就是基本语句,通常是最内层循环的循环体。⑵ 计算基本语句的执行次数的数量级;只需计算基本语句执行次数的数量级,这就意味着只要保证基...原创 2020-11-23 13:00:53 · 4388 阅读 · 0 评论 -
剑指offer——1、有序二维数组中找到指定值
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题 public boolean Find(int target, int [][] array) { int x = array.length - 1;//行...原创 2020-11-23 13:03:04 · 135 阅读 · 0 评论 -
算法天天练——java实现单链表的增删操作(模拟实现MyLinkedList)
文章目录1、定义Node节点2、实现add、remove、get等方法。1、定义Node节点public class Node { Object obj;//对象 Node previous;//前一个节点 Node next;//下一个节点 public Node() { } public Node(Node previous, Objec...原创 2020-11-23 13:04:32 · 280 阅读 · 0 评论