• ARTS 计划第四周


    Algorithm

    Remove Nth Node From End of List

    Solution

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     struct ListNode *next;
     * };
     */
    int GetLength(struct ListNode*head)
    {
        if(head==NULL)
        {
            return 0;
        }
        struct ListNode *p=head;
        int length=1;
        while(p->next!=NULL)
        {
            length++;
            p=p->next;
        }
        return length;
    }
    
    struct ListNode* removeNthFromEnd(struct ListNode* head, int n) {
        int length=GetLength(head);
        struct ListNode * headnode=malloc(sizeof(struct ListNode));
        headnode->next=head;
        struct ListNode * headini;
        if(length>=1){
        int i=0;
        
        struct ListNode * p=headnode;
        while(i<length-n)
        {
            i++;
            p=p->next;
        }
        struct ListNode *tmp;
        tmp=p->next;
        p->next=p->next->next;
        free(tmp);
        }
        else if(length==0)
        {
            headini=NULL;
        }
        headini=headnode->next;
        return headini;
    }
    

    简单的链表实现,主要还是对空集的判断。

    REVIEW

    《信号和系统》奥本海姆,一本关于数字信号的初级的书本,初步阅读了书籍的导论部分,了解了信号的数字解析方式,这本书是进行图像处理和语音识别的基础课程,在以前学习这些内容的时候,自己多少有一些不知所措,看了这书的目录和导论部分,我才知道自己缺少的不仅是数学方面的知识,还有对于数学应用的工程内容。

    TIPS

    • 网易开源了他的DUILIB界面库,很大的提升了DUILIB的使用功效,可以制作更多的动态效果。
    • lrc歌词内容解析,了解了基本的lrc歌词结构。
    • 使用了不完整的结构体(指针),没有初始化指针,给指针进行动态内存分配可以解决问题
    • 程序界面的制作,需要学习基本的功能需求流程图,这样对于程序整体的逻辑和程序的维护理解都有这莫大的好处。

    SHARE

    《编程珠玑》,一本可以从薄读到厚,从第一章开始就深入理解了计算机中的编码,排序和位操作的一些关系,可以了解不一样的计算机。

  • 相关阅读:
    Bootstrap-模态框Modal使用
    MVC Controller return 格式
    数据库水平拆分和垂直拆分区别(以mysql为例)
    MySQL 对于大表(千万级),要怎么优化呢?
    mysql优化案例
    Mysql大表查询优化技巧总结及案例分析
    Mysql Partition 理论知识总结
    mysql Partition(分区)初探
    MySQL partition分区I
    xapian安装
  • 原文地址:https://www.cnblogs.com/bookdrip/p/10706557.html
Copyright © 2020-2023  润新知