zoukankan      html  css  js  c++  java
  • 华为2016研发工程师-删数字

    删数字

    题目解析:类似于约瑟夫环,可以用链表的思路。
    
    #include <iostream>
    #include <cstdlib>
    using namespace std;
    
    class Node
    {
    public:
        int data;
        Node *pNext;
    };
    class CircularLinkList
    {
    public:
        Node *head;
        CircularLinkList()
        {
             head = new Node;
             head->data = 0;
             head->pNext = head;
        }
        ~CircularLinkList()
        {
            delete head;
        }
        void CreateLinkList(int n);
    };
    void CircularLinkList::CreateLinkList(int n)
    {
        head->data = n-1;
        Node *pnew,*ptail = head;
        for(int i = n-2;i >= 0; i--)
        {
            pnew = new Node;
            pnew->data = i;
            pnew->pNext = head;
            head = pnew;
        }
        ptail->pNext = head;
    }
    
    int main()
    {
        int x;
        int c = 1;
        cin >> x;
        CircularLinkList LinkList;
        LinkList.CreateLinkList(x);
        Node *currNode = LinkList.head;
        //Node *pdelete;
        while(currNode->pNext != currNode)
        {
             if(c == 2)                                    //遍历两个就删一个
             {
                //pdelete = currNode->pNext;
                currNode->pNext = currNode->pNext->pNext;
                //delete pdelete;
                currNode = currNode->pNext;
                c = 1;
             }
             else                                          //不够两个就继续遍历
             {
                 currNode = currNode->pNext;
                 c++;
             }
        }
        cout << currNode->data << endl;
        return 0;
    }
    
    
  • 相关阅读:
    Scala 获取当前时间
    mnist 数据集的识别源码解析
    tf.nn.softmax_cross_entropy_with_logits的用法
    softmax函数
    实现手写体 mnist 数据集的识别任务
    MNIST 数据集
    神经网络之激活函数
    模块化神经网络
    np.c_与np.r_
    学习率的选取-滑动平均
  • 原文地址:https://www.cnblogs.com/Jesse-Cavendish/p/14528292.html
Copyright © 2011-2022 走看看