问题描述:
五个哲学家吃饭
设有5个哲学家,共享一张放有五把椅子的桌子,每人分得一把椅子.但是,桌子上总共有5支筷子,在每人两边分开各放一致.哲学家们在肚子饥饿时才试图分两次从两边拾起筷子就餐.条件:(1)只有拿到两支筷子时,哲学家才会吃饭.(2)如果筷子已在他人手中,则该哲学家必须等待到他人吃完后才能拿到筷子.(3)任一哲学家在自己未拿到两支筷子吃饭之前,决不放下自己手中的筷子.试描述一个既没有两邻座同时吃饭,又没有人饿死(永远拿不到筷子)的算法.
设有5个哲学家,共享一张放有五把椅子的桌子,每人分得一把椅子.但是,桌子上总共有5支筷子,在每人两边分开各放一致.哲学家们在肚子饥饿时才试图分两次从两边拾起筷子就餐.条件:(1)只有拿到两支筷子时,哲学家才会吃饭.(2)如果筷子已在他人手中,则该哲学家必须等待到他人吃完后才能拿到筷子.(3)任一哲学家在自己未拿到两支筷子吃饭之前,决不放下自己手中的筷子.试描述一个既没有两邻座同时吃饭,又没有人饿死(永远拿不到筷子)的算法.
问题解答:
我来补答展开全文阅读