1.单向链表的原地反转

public class A {

    public A next;

    private int n;

    public A(int n) {
this.n = n;
} public static A reverse(A a){
A current = a.next;
a.next = null;
A last = a; while(true){
if (current == null) {
break;
}else{
A c = current.next;
current.next = last;
last = current;
current = c;
}
} return last;
} public static void main(String[] args) {
A a1 = new A(1); A a2 = new A(2);
a1.next = a2; A a3 = new A(3);
a2.next = a3; A last = reverse(a1);
System.out.println(last.n);
System.out.println(last.next.n);
System.out.println(last.next.next.n);
} }

2.消除字符串中成对的括号,必须成对匹配,否则打印error

public class B{

    public static void removeBrackets(char[] arr){
int leftBracket = 0;
StringBuilder sb = new StringBuilder();
for (char ch : arr) {
if (ch == '(') {
leftBracket++;
}else if(ch == ')'){
if (leftBracket == 0) {
System.out.println("error");
return;
}else{
leftBracket --;
}
}else{
sb.append(ch);
}
}
if ( leftBracket != 0 ) {
System.out.println("error");
return;
}
System.out.println(sb.toString());
} public static void main(String[] args) {
String s = "1(23456(789)abc)";
removeBrackets(s.toCharArray());
}
}

3.将长度为a的单向链表链接到长度为b的单向链表,算法复杂度是 A. O(blogb) B. O(b) C.O(a*b) D. O(logb)

mobike的更多相关文章

  1. System Error Codes

    很明显,以下的文字来自微软MSDN 链接http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx M ...

  2. day25、 静态属性、类方法、静态方法、组合、继承、

    一. 静态属性.类方法.静态方法 1.1静态属性 class Room: def __init__(self,name,owner,width,length): self.name=name self ...

  3. React Native填坑之旅 -- 使用iOS原生视图(高德地图)

    在开发React Native的App的时候,你会遇到很多情况是原生的视图组件已经开发好了的.有的是系统的SDK提供的,有的是第三方试图组件,总之你的APP可以直接使用的原生视图是很多的.React ...

  4. 【Python3之面向对象的程序设计】

    一.面向对象的程序设计的由来 1.第一阶段:面向机器,1940年以前 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数据. 简单来说,就是直接编写 0 和 1 ...

  5. 微信小程序初识

    http://lib.csdn.net/article/wechat/46742 微信小程序的前途和定位有什么疑惑?点进去 简单先记几个印象名词:流量入口,线下是重点,“即用即走”适合低频工具类产品. ...

  6. link 标签

    link标签 主要是引用外部文件 rel属性 规定当前文档与被链接文档之间的关系 alternate,author,help,icon,licence,next,pingback,prefetch,p ...

  7. python 面向对象之继承与派生

    一:初识继承 1,什么是继承? 继承指的是类与类之间的关系,是一种什么"是"什么的关系,继承的功能之一就是用来解决代码重用问题 继承是一种创建新类的方式,在python中,新建的类 ...

  8. python3全栈开发-面向对象的三大特性(继承,多态,封装)之继承

    一 .初识继承 1.什么是继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称为基类或超类,新建的类称为派生类或子类. 特点: 子类会“”遗传”父类的属 ...

  9. golang操作memcached 转自https://blog.csdn.net/weixin_37696997/article/details/78760397

    go使用memcached需要第三方的驱动库,这里有一个库是memcached作者亲自实现的,代码质量效率肯定会有保障 1:安装 go get github.com/bradfitz/gomemcac ...

随机推荐

  1. Django Form表单组件

    Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否 ...

  2. 面试小记---java基础知识

    **static 和 final 的理解**  static:是静态变量修饰符,修饰的是全局变量,所以对象是共享的,在开始类设计的初期就分配空间.     final:声明式属性,方法,类.分别表示属 ...

  3. day16

    列表生成式语法[表达式 for in 遍历 if 条件]会从li一次去除所有值,进行判断 如果满足条件 就装到新的列表里 生成数据的函数函数体中又yield关键字yield 暂停函数的执行 还能返回一 ...

  4. 从客户端取到浏览器返回的oauth凭证

    这个随便记录一下,也是朋友问我的一个问题. 在网上找了下,没找到相关的,用英文也搜索了一下,可能我的关键词没找对,找了一会没找到. 想到以前用过的rclone也是用的这样的方式,去看了下相关部分源码. ...

  5. make capslock+hjkl as arrows

    Solution 2 (probably better) I was happy with solution 1, until I realized I couldn't use the key bi ...

  6. Lintcode228-Middle of Linked List-Naive

    228. Middle of Linked List Find the middle node of a linked list. Example Example 1: Input: 1->2- ...

  7. Lintcode225-Find Node in Linked List-Naive

    225. Find Node in Linked List Find a node with given value in a linked list. Return null if not exis ...

  8. js form表单的校验

    if(!$("#form").validate().form()){ return false;} <元素 class="required">< ...

  9. react native 项目使用 expo 二维码扫描失败

    今天学习react native,需使用expo在移动端进行调试. npm start 运行项目后,使用expo扫描二维码,始终没有反应.于是决定采用这个方法: 连上手机打开usb调试后,按下‘a’, ...

  10. [转]osgconv工具简介

    osgconv是一种用来读取3D数据库以及对它们实施一些简单的操作的实用应用程序,同时也被称作 一种专用3D数据库工具. 用osgconv把其他格式的文件转换为OSG所支持的格式 osgconv是一种 ...