算法第一天,记录!

监督自己每天搬一道简单的算法!第一天!

/**
 * @author t
 * @version 1.0
 * @date 2020/4/27 14:09
 * @company juya
 */
public class FirstOne {
    public static void main(String[] args) {
        //给定一个整数数组和一个目标值,找出数组中和为目标值的两个数
        //可以假设每个输入只对应一种答案,且同样的元素不能重复利用
        //例如 nums=[2,7,11,15],target=9
        //因为nums[0]+nums[1]=2+7=9   所以返回[0,1]
        int[] ints = {2, 3, 4, 5, 6, 7};
        int[] ints1 = FirstOne(ints, 10);
        for (int i : ints1) {
            System.out.println(i);
        }
    }

    public static int[] FirstOne(int[] nums, int target) {
        for (int i = 0; i < nums.length; i++) {
            for (int j=i+1;j<nums.length;j++){
                if (nums[i]==target-nums[j]){
                    return new int[]{i,j};
                }
            }

        }
        throw new IllegalArgumentException("no two sum solution");

    }
}

结果

D:\jdk1.8.0_201\bin\java.exe "-javaagent:D:\IntelliJ IDEA 2018.3.4\lib\idea_rt.jar=53941:D:\IntelliJ IDEA 2018.3.4\bin" -Dfile.encoding=UTF-8 -classpath D:\jdk1.8.0_201\jre\lib\charsets.jar;D:\jdk1.8.0_201\jre\lib\deploy.jar;D:\jdk1.8.0_201\jre\lib\ext\access-bridge-64.jar;D:\jdk1.8.0_201\jre\lib\ext\cldrdata.jar;D:\jdk1.8.0_201\jre\lib\ext\dnsns.jar;D:\jdk1.8.0_201\jre\lib\ext\jaccess.jar;D:\jdk1.8.0_201\jre\lib\ext\jfxrt.jar;D:\jdk1.8.0_201\jre\lib\ext\localedata.jar;D:\jdk1.8.0_201\jre\lib\ext\nashorn.jar;D:\jdk1.8.0_201\jre\lib\ext\sunec.jar;D:\jdk1.8.0_201\jre\lib\ext\sunjce_provider.jar;D:\jdk1.8.0_201\jre\lib\ext\sunmscapi.jar;D:\jdk1.8.0_201\jre\lib\ext\sunpkcs11.jar;D:\jdk1.8.0_201\jre\lib\ext\zipfs.jar;D:\jdk1.8.0_201\jre\lib\javaws.jar;D:\jdk1.8.0_201\jre\lib\jce.jar;D:\jdk1.8.0_201\jre\lib\jfr.jar;D:\jdk1.8.0_201\jre\lib\jfxswt.jar;D:\jdk1.8.0_201\jre\lib\jsse.jar;D:\jdk1.8.0_201\jre\lib\management-agent.jar;D:\jdk1.8.0_201\jre\lib\plugin.jar;D:\jdk1.8.0_201\jre\lib\resources.jar;D:\jdk1.8.0_201\jre\lib\rt.jar;D:\ideaWorkSpace\service_capability_evaluate\calculation_mysql\target\classes;D:\m2\org\apache\flink\flink-core\1.8.1\flink-core-1.8.1.jar;D:\m2\org\apache\flink\flink-annotations\1.8.1\flink-annotations-1.8.1.jar;D:\m2\org\apache\flink\flink-metrics-core\1.8.1\flink-metrics-core-1.8.1.jar;D:\m2\org\apache\flink\flink-shaded-asm\5.0.4-6.0\flink-shaded-asm-5.0.4-6.0.jar;D:\m2\org\apache\commons\commons-lang3\3.3.2\commons-lang3-3.3.2.jar;D:\m2\com\esotericsoftware\kryo\kryo\2.24.0\kryo-2.24.0.jar;D:\m2\com\esotericsoftware\minlog\minlog\1.2\minlog-1.2.jar;D:\m2\org\objenesis\objenesis\2.1\objenesis-2.1.jar;D:\m2\commons-collections\commons-collections\3.2.2\commons-collections-3.2.2.jar;D:\m2\org\apache\commons\commons-compress\1.18\commons-compress-1.18.jar;D:\m2\org\apache\flink\flink-shaded-guava\18.0-6.0\flink-shaded-guava-18.0-6.0.jar;D:\m2\org\slf4j\slf4j-api\1.7.15\slf4j-api-1.7.15.jar;D:\m2\com\google\code\findbugs\jsr305\1.3.9\jsr305-1.3.9.jar;D:\m2\org\apache\flink\force-shading\1.8.1\force-shading-1.8.1.jar;D:\m2\org\apache\flink\flink-streaming-scala_2.11\1.8.1\flink-streaming-scala_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-streaming-java_2.11\1.8.1\flink-streaming-java_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-runtime_2.11\1.8.1\flink-runtime_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-hadoop-fs\1.8.1\flink-hadoop-fs-1.8.1.jar;D:\m2\commons-io\commons-io\2.4\commons-io-2.4.jar;D:\m2\org\apache\flink\flink-shaded-jackson\2.7.9-6.0\flink-shaded-jackson-2.7.9-6.0.jar;D:\m2\commons-cli\commons-cli\1.3.1\commons-cli-1.3.1.jar;D:\m2\org\javassist\javassist\3.19.0-GA\javassist-3.19.0-GA.jar;D:\m2\com\typesafe\akka\akka-actor_2.11\2.4.20\akka-actor_2.11-2.4.20.jar;D:\m2\com\typesafe\config\1.3.0\config-1.3.0.jar;D:\m2\org\scala-lang\modules\scala-java8-compat_2.11\0.7.0\scala-java8-compat_2.11-0.7.0.jar;D:\m2\com\typesafe\akka\akka-stream_2.11\2.4.20\akka-stream_2.11-2.4.20.jar;D:\m2\org\reactivestreams\reactive-streams\1.0.0\reactive-streams-1.0.0.jar;D:\m2\com\typesafe\ssl-config-core_2.11\0.2.1\ssl-config-core_2.11-0.2.1.jar;D:\m2\com\typesafe\akka\akka-protobuf_2.11\2.4.20\akka-protobuf_2.11-2.4.20.jar;D:\m2\com\typesafe\akka\akka-slf4j_2.11\2.4.20\akka-slf4j_2.11-2.4.20.jar;D:\m2\org\clapper\grizzled-slf4j_2.11\1.3.2\grizzled-slf4j_2.11-1.3.2.jar;D:\m2\com\github\scopt\scopt_2.11\3.5.0\scopt_2.11-3.5.0.jar;D:\m2\com\twitter\chill_2.11\0.7.6\chill_2.11-0.7.6.jar;D:\m2\com\twitter\chill-java\0.7.6\chill-java-0.7.6.jar;D:\m2\org\apache\flink\flink-clients_2.11\1.8.1\flink-clients_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-optimizer_2.11\1.8.1\flink-optimizer_2.11-1.8.1.jar;D:\m2\org\apache\commons\commons-math3\3.5\commons-math3-3.5.jar;D:\m2\org\apache\flink\flink-scala_2.11\1.8.1\flink-scala_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-java\1.8.1\flink-java-1.8.1.jar;D:\m2\org\apache\flink\flink-shaded-asm-6\6.2.1-6.0\flink-shaded-asm-6-6.2.1-6.0.jar;D:\m2\org\scala-lang\scala-reflect\2.11.12\scala-reflect-2.11.12.jar;D:\m2\org\scala-lang\scala-library\2.11.12\scala-library-2.11.12.jar;D:\m2\org\scala-lang\scala-compiler\2.11.12\scala-compiler-2.11.12.jar;D:\m2\org\scala-lang\modules\scala-xml_2.11\1.0.5\scala-xml_2.11-1.0.5.jar;D:\m2\org\scala-lang\modules\scala-parser-combinators_2.11\1.0.4\scala-parser-combinators_2.11-1.0.4.jar;D:\m2\org\apache\flink\flink-connector-kafka_2.11\1.8.1\flink-connector-kafka_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-connector-kafka-base_2.11\1.8.1\flink-connector-kafka-base_2.11-1.8.1.jar;D:\m2\org\apache\kafka\kafka-clients\2.0.1\kafka-clients-2.0.1.jar;D:\m2\org\lz4\lz4-java\1.4.1\lz4-java-1.4.1.jar;D:\m2\org\xerial\snappy\snappy-java\1.1.7.1\snappy-java-1.1.7.1.jar;D:\m2\org\apache\flink\flink-queryable-state-runtime_2.11\1.9.0\flink-queryable-state-runtime_2.11-1.9.0.jar;D:\m2\org\apache\flink\flink-queryable-state-client-java_2.11\1.8.1\flink-queryable-state-client-java_2.11-1.8.1.jar;D:\m2\org\apache\flink\flink-shaded-netty\4.1.32.Final-6.0\flink-shaded-netty-4.1.32.Final-6.0.jar com.jy.leetcode.FirstOne
1
5

第二天 有点蒙圈

package com.jy.leetcode;

import javax.xml.soap.Node;

/**
 * @author t
 * @version 1.0
 * @date 2020/4/28 15:29
 * @company juya
 */
public class Two {
    public static void main(String[] args) {
        //给定两个 非空 链表来标识两个非负整数。位数按照 逆序 方式存储
        //每个节点只存储单个数字
        //两数相加返回新的链表
        //假设处了数字0之外,这两个数字都不会以0开头
        //示例: 输入:(2->4->3)+(5->6->4)  输出:7->0->8  原因:342+465=807
        Two two = new Two();
        ListNode listNode = two.addNode(3);
        Two two1 = new Two();
        ListNode listNode1 = two1.addNode(1);
        ListNode listNode2 = addTwoNumbers(listNode, listNode1);
        System.out.println(listNode2.val);

    }

    public static ListNode addTwoNumbers(ListNode i1, ListNode i2) {
        ListNode dummyHead = new ListNode(0);
        ListNode p = i1, q = i2, curr = dummyHead;
        int carry = 0;
        while (p != null || q != null) {
            int x = (p != null) ? p.val : 0;
            int y = (q != null) ? q.val : 0;
            int sum = carry + x + y;
            carry = sum / 10;
            curr.next = new ListNode(sum % 10);
            curr = curr.next;
            if (p != null) p = p.next;
            if (q != null) q = q.next;

        }
        if (carry > 0) {
            curr.next = new ListNode(carry);
        }
        return dummyHead.next;

    }

    //链表中的节点
    public static class ListNode {
        public int val;//节点的对象,即内容
        public ListNode next;//节点的引用,指向下一个节点

        public int val() {
            return val;
        }

        public ListNode(int val) {
            this.val = val;
        }
    }

    //向链表中插入数据,返回链表
    static ListNode head = null;//头节点

    public  ListNode addNode(int d) {
        ListNode newNode = new ListNode(d);//实例化节点
        if (head == null) {
            head = newNode;
            return head;
        }
        ListNode tmp = head;
        while (tmp.next != null) {
            tmp = tmp.next;
        }
        tmp.next = newNode;
        return tmp;
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值