单链表的逆向打印、删除无头的非尾节点、无头链表插入节点、约瑟环-创新互联
                                            //1、逆向打印链表(递归)
void PrintTailToHead(ListNode *pHead)
{
                ListNode *cur = pHead;
                 if(cur != NULL)
                {
                                PrintTailToHead(cur->_next);
                                printf( "%d ",cur->_data);
                }
}
//2、删除无头链表中的非尾节点
void DelNoTail(ListNode *pos)
{
                assert(pos && pos->_next );
                ListNode *next = pos->_next ;
                swap(pos->_data ,next->_data );
                pos->_next = next->_next ;
                free(next);
}
//3、无头链表非头结点前插入一个节点
void InsertNoHead(ListNode * pos, DataType x)
{
                ListNode *tmp = BuyNode(pos->_data );
                tmp->_next = pos->_next;
                pos->_next = tmp;
                pos->_data = x;
}
//4、约瑟夫环问题(假设是一个循环单链表)
ListNode* Josephuscycle(ListNode *pHead, DataType x)
{
                ListNode *cur = pHead;
                 while(1)
                {
                                 if(cur = cur->_next )
                                {
                                                 return cur;
                                }
                                DataType m = x;
                                 while(--x)
                                {
                                                cur = cur->_next ;
                                }
                                ListNode *next = cur->_next ;
                                swap(cur->_data ,next->_data);
                                cur->_next = next->_next ;
                                free(next);
                }
}创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。

当前名称:单链表的逆向打印、删除无头的非尾节点、无头链表插入节点、约瑟环-创新互联
本文链接:http://www.cqwzjz.cn/article/doppsd.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 