In this thesis, computational structures applicable to graph problems and tree problems have been established and are used to develop parallel algorithms for typical graphs and trees. A breadth first search algorithm for general graphs and a depth first search algorithm for acyclic digraphs have been developed. These algorithms which are based on the shortest path algorithm by Dekel et al. runs in $O(\log^2n$) time using $O(n^3$) processors where d and n are the diameter and the number of vertices of graphs, respectively. Our breadth first search algorithm turned out to be the same as that of Ghosh and Bhattacharjee which is based on the parallel breadth first algorithm for trees. Maximum matching algorithm for bipartite graphs which runs in $O(n \ast \log\, n \ast \log \log\, n)$ time using $O(N^2 \ast [n/\log\,n])$ also has been developed. For tree problems, we have developed algorithms for tree orientation, for maximum matching, and for finding the diameter and the center of trees. These algorithms have the time complexity $O(\log^2n)$ using $O(n)$ processors. For maximum matchings in bipartite graphs, we were able to lower the time bound by using more processors. For other problems, a lower time bound is also achieved using fewer processors.