首页 > Java > java教程 > Java中链表的示例分析

Java中链表的示例分析

PHPz
发布: 2023-05-31 17:13:07
转载
746 人浏览过

题目一

Java中链表的示例分析

 解法

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public int getDecimalValue(ListNode head) {
        int[] arr = new int[31];
        int index = 0;
        int ans = 0;
        while(head!=null){
            arr[index] = head.val;
            index++;
            head = head.next;
        }
        for(int i = 0;i<index;i++){
            if(arr[i]==1){
                ans+=(1<<(index-1-i));
            }
        }
        return ans;
    }
}
登录后复制

题目二

Java中链表的示例分析

解法

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public int[] reversePrint(ListNode head) {
        int index = 0;
        ListNode h = head;
        while(head!=null){
            head = head.next;
            index++;
        }
        int[] arr = new int[index];
        while(h!=null){
            arr[index-1] = h.val;
            index--;
            h = h.next;
        }
        return arr;
    }
}
登录后复制

题目三

Java中链表的示例分析

解法

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        ListNode node = new ListNode(-1);
        ListNode ans = node;
        while(l1!=null&&l2!=null){
            if(l1.val<=l2.val){
                node.next = l1;
                l1 = l1.next;
            }else{
                node.next = l2;
                l2 = l2.next;
            }
            node = node.next;
        }
        if(l1!=null){
            node.next = l1;
        }
        if(l2!=null){
            node.next = l2;
        }
        return ans.next;
    }
}
登录后复制

以上是Java中链表的示例分析的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:yisu.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板