• Java-20180412


    今天开始重新复习Java,完成了leetcode的第一题。
    1.算法:
    给定一个数组和目标值,找出相加等于目标值的数组元素的下标。
    数组[2,7,11,15];
    target:9;
    返回:[0,1];
    import java.util.Vector;
    class Solution {
        public int[] twoSum(int[] nums, int target) {
        Vector in=new Vector();
        int []inde =new int[2];
        for(int i=0;i<nums.length;i++)
          for(int j=i+1;j<nums.length;j++)
         {
            if(nums[i]+nums[j]==target)
            {
              if(!in.contains(i))
              in.add(i);
              if(!in.contains(j))
              in.add(j);
            }
         }
         Integer[] ind=in.toArray(new Integer[in.size()]);
         for(int k=0;k<ind.length;k++)
         {
           inde[k]=ind[k].intValue();
         }
         return inde;
    }
    2.Vector的基本定义,声明,申请空间及基本操作
    Vector实现了Java中动态数组的功能,基本原理是先分配固定的空间,当空间不够时再申请新的空间。
    容量是指向量能够容纳的元素个数,而长度则是指真是元素的真实个数,容量增量是指申请新空间的大小-通常是非负整数(0代表翻倍);
    声明和初始化:Vector <Object> vo=new Vector<Object> ();   不使用参数默认初始容量为10,增量为0;一个参数代表初始容量,增量默认为0;两个参数分别代表初始容量和增量;
    添加元素:
    boolean add(E o)和void addElement(E o)功能相似,都是在向量尾添加元素;
    void add(int i,E o)和void insertElementAt(E o,int i)功能相同,都是插入,两个参数一个是插入位置,一个是插入对象,顺序相反
    修改元素:
    E set(int i,E o)和void seElementAt(E o,int i)
    删除元素:
    void clear()和void removeAllElements()都是清空;E remove(int i)和void removeElementAt(int i)作用移除固定位置元素;
    boolean remove(O o),boolean removeElement(O o)删除第一个与o相同的元素。
    查询元素:
    boolean cotains(O o)查询Vector是否包含o;int IndexOf(O o)查询o相等元素的第一次出现的位置,如找不到返回-1;int lastIndexOf(O e)查找最后一个并返回下标,否则返回-1;
    而int IndexOf(O o,int i) 和 int lastIndexOf(O e,int i)代表大于等于i的第一个元素的下标以及小于等于i的最后一个;
    E elementAt(int i)和E get(int i)返回下标为i的元素;
    E firstElement()和E lastElement()返回第一个和最后一个元素。
    其他操作:int capacity()返回容量,int size()返回长度,boolean isEmpty()判断是否为空,void trimToSize()是容量变为长度。
    迭代器
    方便的循环。
    示例
    Vector <String> vo=new Vector<String> ();
    //Vector的赋值
    Iterator<String> it=vs.Iterator();
    //此时it指向第1个元素之前,Vector不能再发生改变,否则就会抛出异常java.util.ConcurrentModificationException
    while(it.hasNext())
    {System.out.println(it.next());}
    3.一些转换
    Vector与数组的转换:
    Integer[] ind=in.toArray(new Integer[in.size()]); 其中in是Vector对象,ind为Integer数组;
    Integer与int的转换:
    inde[k]=ind[k].intValue();
  • 相关阅读:
    [POJ 2777]Count Color 线段树+二进制状态压缩
    [git] git push问题 解决 Updates were rejected because the tip of your current branch is behind 和每次输入用户名和密码
    [hdu-5795]A Simple Nim 博弈 尼姆博弈 SG函数打表找规律
    [codeforces1284E]New Year and Castle Construction 几何
    Spring事务相关接口以及实现类
    MyBatis与Spring整合
    实现一个简易RPC
    使用CAS实现一个超时锁
    阻塞队列
    Java中的Lock接口
  • 原文地址:https://www.cnblogs.com/lbrs/p/8855613.html
Copyright © 2020-2023  润新知