有關 double linked list 的題目求助
小弟我這堂課上周才寫完 leetcode 24,他這週出了這個題目我實在無法解出來,我目前只能夠只用指標去做 linked list 或 stack 之類的基礎,一瞬間要炸這種擴充太多的實在沒想法,想求助各位大佬幫幫忙QQ,感恩!請使用Linked List資料結構設計一個小型的facebook功能(TinyFB):
以下為使用者可以操作的功能:
1. 若使用者沒有帳號,可讓使用者建立新帳號,由使用者輸入帳號、密碼
2. 若使用者有帳號,可直接輸入帳號、密碼登入系統
3. 使用者登入系統後,可以操作以下功能:
3.1 好友管理
3.1.1 建立好友: 由使用者輸入好友帳號, 若存在該帳號, 則建立雙方互為好友
3.1.2 刪除好友: 由使用者刪除某特定好友, 刪除後, 雙方即不是好友.
3.2 發文管理
3.2.1 由使用者發表一段文字說明, 建立發文內容
3.2.2 刪除發文: 刪除目前使用者之前所發表的特定文章.
3.2.3 列出目前這個使用者的所有發文.
3.3 按讚:
3.3.1 指定特定好友(也可以是自己的帳號), 列出該好友的發文清單(依照發文順序列出)
3.3.2 針對3.3.1的特定文章按讚.
3.3.3 取消針對特定好友特定文章的按讚
3.3.4 列出所有對該特定好友的特定文章按讚的好友清單. (雙方若已經不是好友, 請刪除該按讚)
Hint: Singly linked list有一個link為next, Doubly linked list有2個Link, 分別為next, prev.我們可定義多個資料結構, 例如(以下僅為示範, 同學可以依照自己的想法去設計)
1. User. 裡面有多個Link, 包括next, prev, friend, article等. 2. Article. 裡面有文章、next, prev, 按讚的朋友姓名清單. 3. 其他(如果您認為需要第三個以上的結構來協助您開發此題目的功能)
一瞬間擴充太多啦QQ 我還只是剛入門的小新手而已,太炸裂了
再次感謝各位!
本帖最后由 jhq999 于 2022-11-2 19:45 编辑
我出个结构体
typedef struct FRIENDNODE
{
int id;
char name;
char pw;
struct FRIENDS
{
struct FRIENDNODE * frind;
struct FRIENDS friendnext;
};
struct FRIENDS * friends;
struct USERTEXT
{
int txtid;
char title;
char *txtdata;
struct DING
{
struct FRIENDNODE * dingfriend;
struct DING* dingnext;
};
struct DING *ding;
struct USERTEXT* txtnext;
} ;
struct USERTEXT* txts;
struct FRIENDNODE * next;
} FRDND,*pFRDND; jhq999 发表于 2022-11-2 19:26
我出个结构体
還是炸不太出來QQ caspar1 发表于 2022-11-4 22:20
還是炸不太出來QQ
就是链表添加、查找、删除,学了链表应该不难,就是繁琐一点 jhq999 发表于 2022-11-4 22:48
就是链表添加、查找、删除,学了链表应该不难,就是繁琐一点
我再努力試試 感謝您 指標還剛入門 很多原理還不懂 謝謝您 能不能不要用繁体字啊{:10_277:} zhangjinxuan 发表于 2022-11-5 18:32
能不能不要用繁体字啊
抱歉造成困擾 我只是上來討論題目跟求助而已 caspar1 发表于 2022-11-6 13:01
抱歉造成困擾 我只是上來討論題目跟求助而已
没事,我尽量看看 zhangjinxuan 发表于 2022-11-6 14:10
没事,我尽量看看
感謝您!
zhangjinxuan 发表于 2022-11-6 14:10
没事,我尽量看看
小弟我这堂课上周才写完 leetcode 24,他这周出了这个题目我实在无法解出来,我目前只能够只用指标去做 linked list 或 stack 之类的基础,一瞬间要炸这种扩充太多的实在没想法,想求助各位大佬帮帮忙QQ,感恩!
请使用Linked List资料结构设计一个小型的facebook功能(TinyFB):
以下为使用者可以操作的功能:
1. 若使用者没有帐号,可让使用者建立新帐号,由使用者输入帐号、密码
2. 若使用者有帐号,可直接输入帐号、密码登入系统
3. 使用者登入系统后,可以操作以下功能:
3.1 好友管理
3.1.1 建立好友: 由使用者输入好友帐号, 若存在该帐号, 则建立双方互为好友
3.1.2 删除好友: 由使用者删除某特定好友, 删除后, 双方即不是好友.
3.2 发文管理
3.2.1 由使用者发表一段文字说明, 建立发文内容
3.2.2 删除发文: 删除目前使用者之前所发表的特定文章.
3.2.3 列出目前这个使用者的所有发文.
3.3 按赞:
3.3.1 指定特定好友(也可以是自己的帐号), 列出该好友的发文清单(依照发文顺序列出)
3.3.2 针对3.3.1的特定文章按赞.
3.3.3 取消针对特定好友特定文章的按赞
3.3.4 列出所有对该特定好友的特定文章按赞的好友清单. (双方若已经不是好友, 请删除该按赞)
Hint: Singly linked list有一个link为next, Doubly linked list有2个Link, 分别为next, prev.我们可定义多个资料结构, 例如(以下仅为示范, 同学可以依照自己的想法去设计)
1. User. 里面有多个Link, 包括next, prev, friend, article等. 2. Article. 里面有文章、next, prev, 按赞的朋友姓名清单. 3. 其他(如果您认为需要第三个以上的结构来协助您开发此题目的功能)
一瞬间扩充太多啦QQ 我还只是刚入门的小新手而已,太炸裂了
再次感谢各位! caspar1 发表于 2022-11-6 14:20
小弟我这堂课上周才写完 leetcode 24,他这周出了这个题目我实在无法解出来,我目前只能够只用指标去做 l ...
感谢~ 嘶——看上去有点难,实现有点繁琐,实在抱歉 zhangjinxuan 发表于 2022-11-6 14:24
嘶——看上去有点难,实现有点繁琐,实在抱歉
沒事,我也還在努力、跳級跳太多完全應付不來,一起加油
页:
[1]