이중 연결 목록으로 대기열을 구현하려고합니다. 그러나 두 번째 노드를 대기열에 추가하려고하면 대기열 기능이 무한 재귀로 바뀌므로 어떤 원인인지 파악할 수 없습니다. (defstruct node
value
(next nil)
(previous nil))
(defstruct (queue (:print-function print
Dublly Linked List를 사용하여 구현 한 스택처럼 작동하는 데이터 구조가있는 경우 중간 요소를 항상 유지하는 포인터도 추가했습니다. O (log (k))에 K 번째로 삽입 된 요소를 반환하는 peekAt (k) 메서드를 추가하여 수정하려고합니다. 나는이 작업을 수행하는 방법에 어떤 아이디어? 감사.
순환 및 이중 연결 목록을 구현하는 프로그램을 만들었습니다. /*
* listfech2.c
* Last Change: 2014-04-23
* Maintainer: Lucas de Sena <[email protected]>
* License: This file is placed in public domain.
*/
#include <stdio
이중 연결 목록 앞쪽에 노드를 추가하는 코드입니다. , public class DListNode{
public DListNode prev,next;
public Object item;
public DListNode(Object i,DListNode n,DListNode p){
prev=p;
next=n;
이중 연결 목록 중간에 노드를 삽입하고 싶습니다. 이것은 제 구현입니다. 내 기본 인수는 삽입 할 노드 앞에있는 노드입니다. public class DListNode{
public DListNode prev,next;
public Object item;
public DListNode(Object i,DListNode n,DList
배열/목록에 난수를 채우고 이후에 정렬하려고하는 간단한 버튼이있는 WFA를 만들고 있습니다. 나는 정렬 권리를 얻는 것처럼 보이지 않습니다. 도움말 감사. using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.
대부분의 캘린더 응용 프로그램과 마찬가지로 해당 일에 대한 일정 및 작업 목록을 만들려고합니다. 이 연습의 주된 목적은 효과적으로 데이터 구조를 사용하는 것입니다. 나는 두 가지 접근법의 생각 : 다음 사용 달력 일 배열하고 해당 일 동안 작업의 링크 된 목록을 확인하십시오. 둘 다에 대해 연결된 목록을 사용하십시오. 또 다른 질문은 : 위의 시나리오에서
다음 코드를 작성하고 우분투에서 실행했습니다. 크기가 최대 2048X2048 (2의 제곱수가 필요함) 일 때 정상적으로 작동합니다. 그러나 크기가 4096X4096이면 프로그램이 종료됩니다. 크기가 512X512, 일 때 메모리 누수가 발생하지 않으며 더 큰 크기의 valgrind를 통해 실행하려고하면 프로그램도 종료됩니다. 왜? #define SIZE_X
이중 연결 목록이 있고, m_Terminal1은 목록의 시작이고, m_Terminal2는 목록의 끝입니다. 여기 내 코드는 CBusLine(const CBusLine & orig){
m_Terminal1 = new TStop(orig.m_Terminal1 -> m_Name);
m_Terminal2 = new TStop(orig.m_Te
클래스 용 데이터를 처리하고이를 별도의 목록으로 정렬하는 프로그램을 작성합니다. 지금까지 데이터를 보관할 목록을 만든 다음 각 "고객"과 "구입 한 도서"별로 목록을 배열했습니다. 목록에서 첫 번째 항목을 삭제하려고 할 때 segfault가 표시됩니다. void deleteFirst(ListHndl L) {
assert (!isEmpty(L));